我只希望页面的每个块的href /链接,但它会产生空白
到目前为止,这是我的代码
from bs4 import BeautifulSoup
import requests
lists=[]
baseurl='https://meetinglibrary.asco.org/'
for x in range (1,5):
url=f'https://meetinglibrary.asco.org/results?meetingView=2020%20ASCO%20Virtual%20Scientific%20Program&page={x}'
r=requests.get(url)
soup=BeautifulSoup(r.content,'html.parser')
productlist=soup.find_all('a',class_='ng-star-inserted')
for item in productlist:
print(item)
新答案:
它没有给出任何结果的原因是因为目标网站使用JavaScript来呈现内容,而BeautifulSoup不处理JavaScript而是仅在纯HTML上工作。要抓取JavaScript渲染页面,您需要Selenium之类的东西
旧答案:
您可以使用CSS属性选择器来选择a
已href
定义属性的标签,并使用BeautifulSoup进行操作,您可以使用如下select
方法:
from bs4 import BeautifulSoup
import requests
lists=[]
baseurl='https://meetinglibrary.asco.org/'
for x in range (1,5):
url=f'https://meetinglibrary.asco.org/results?meetingView=2020%20ASCO%20Virtual%20Scientific%20Program&page={x}'
r=requests.get(url)
soup=BeautifulSoup(r.content,'html.parser')
productlist=soup.select('a[href].ng-star-inserted')
for item in productlist:
print(item.attr.get("href"))
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句