我想访问这个网站的标题:https://zenodo.org/search?page=1&size=20&q=broma实际上,我使用的是BeautifulSoup,但是当我用这个代码访问时,结果是空的([]):
from urllib.request import urlopen as uReq
from bs4 import BeautifulSoup as soup
def generateSoup(my_url):
uClient = uReq(my_url)
page_html = uClient.read()
uClient.close()
return soup(page_html,"lxml")
page_soup = generateSoup('https://zenodo.org/search?page=1&size=20&q=broma')
containers = page_soup.findAll('a',{'class':'ng-binding'})
print(containers)如果你能纠正我的代码,或者给我另一个我可以使用的库,我将非常感谢你的帮助。
谢谢大家。
编辑:问题是HTML WebSite没有这个元素:Element
发布于 2018-03-04 22:02:17
本网站使用AJAX显示结果,你可以找到AJAX请求来获得JSON结果。
from urllib.request import urlopen as uReq
from bs4 import BeautifulSoup as soup
import json
def generateJson(my_url):
uClient = uReq(my_url)
page_html = uClient.read()
uClient.close()
return json.loads(page_html.decode("utf-8"))
page_json = generateJson('https://zenodo.org/api/records/?page=1&size=20&q=broma')
print(page_json["hits"]["hits"][0]["metadata"]["title"])https://stackoverflow.com/questions/49096001
复制相似问题