Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/arduino/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何解析url以获取此页面中存在的嵌入式视频的所有数据id?_Python_Python 3.x_Parsing_Web Scraping_Beautifulsoup - Fatal编程技术网

Python 如何解析url以获取此页面中存在的嵌入式视频的所有数据id?

Python 如何解析url以获取此页面中存在的嵌入式视频的所有数据id?,python,python-3.x,parsing,web-scraping,beautifulsoup,Python,Python 3.x,Parsing,Web Scraping,Beautifulsoup,我正试图解析此URL以获取文章标记中的数据id元素 我的剧本: import re import pytz import requests import datetime from flask import url_for from bs4 import BeautifulSoup from urllib.parse import urljoin data_id = [] bigbash_article_link = "http://www.espncricinfo.com" r = req

我正试图解析此URL以获取文章标记中的数据id元素

我的剧本:

import re
import pytz
import requests
import datetime
from flask import url_for
from bs4 import BeautifulSoup
from urllib.parse import urljoin
data_id = []

bigbash_article_link = "http://www.espncricinfo.com"

r = requests.get(bigbash_article_link)
bigbash_article_html = r.text

soup = BeautifulSoup(bigbash_article_html, "html.parser")


bigbash_items = soup.find("section",{"class": "contentCollection contentCollection--hero"})
print(bigbash_items)
我想获取此页面上存在的嵌入式视频链接的所有数据id

预期产出:

data_id = [22615485,22616496,22619773,...............]
我如何才能做到这一点?

使用以下方法:

data_ids = [x['href'].split('=')[1] for x in soup.find_all('a', {'class': 'icon-font-before icon-chain-solid-before', 'href': True})]
print(data_ids)
输出:

['22614089', '22622854', '22616496', '22601480', '22611197', '22600498', '22605808', '22602601', '22602543', '22594071', '22595982', '22593725', '22591441', '22553315', '22584758', '22582155', '22585128', '22585477', '22587617']

感谢您的回答,所有这些id都不是videoid,我想要的是具体的videoid,是否可以从这个标签中获得抱歉的延迟回复;我改变了解决方案。请看一看,并让我知道,如果这是你正在寻找的。没问题,是的,这是我正在寻找的,有可能得到一个单独的id不在一个单一的名单?像['22614089'],我想把这个数据id嵌入到iframe中,这样就为每个数据id分配了帧id。你可以使用find而不是find all来获取第一个id。但我不明白你真正的意思。你想要一张名单吗?如果是这样,只需将x..[1]放在另一个括号内,如[x..[1]]。您可以始终迭代该列表以单独使用id。{%for i in data_id%}{%endfor%}这里data_id[0]仅用于第一个元素,如何对所有元素执行此操作?