【发布时间】:2020-08-13 15:49:47
【问题描述】:
试图从this 网站获取链接。但注意到我从解析中获得的链接与浏览器上显示的链接不同。没有任何丢失的链接,因为浏览器和解析结果都显示了 14 个超链接(用于系列)。 但是我的浏览器显示了一些我的“结果”没有的链接,而我的“结果”显示了一些我的浏览器没有的链接。
例如,我的结果显示了一个类似的链接
“https://4anime.to/anime/one-piece-nematsu-tokubetsu-kikaku-mugiwara-no-luffy-oyabun-torimonochou”
但是当我在浏览器中搜索“torimonochou”这个词时,我找不到任何匹配项。
搜索页面源中的链接(右键单击页面并选择查看页面源)所以我不应该错过任何东西。还在 requests.get() 中传递了我的浏览器标题,所以我应该得到相同的 HTML 代码。
代码:
head = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:79.0) Gecko/20100101 Firefox/79.0'}
searchResObj = requests.get("https://4anime.to/?s=one+piece", headers = head)
soupObj = bs4.BeautifulSoup(searchResObj.text, features="html.parser")
尝试了各种不同的方法来解析链接。这只是一个简化版本,它获取页面中的所有链接,所以我没有遗漏任何链接。
all_a = soupObj.select("a")
for links in all_a:
print(links.get("href"))
还查看了我的编译器中的 HTML 代码。超链接确实与我浏览器中显示的不同
print(searchResObj.text)
那么可能是什么原因造成的呢?
【问题讨论】:
-
可能是。但尝试查看页面分数代码并查看具有链接的部分。很确定没有任何JS。
标签: python html beautifulsoup python-requests