gpt4 book ai didi

python-3.x - 使用 python 3.6 和 beautifulsoup 进行网络抓取 - 获取无效的 URL

转载 作者:行者123 更新时间:2023-12-03 08:28:21 26 4
gpt4 key购买 nike

我想用 Python 处理这个页面:http://www.sothebys.com/en/search-results.html?keyword=degas%27

这是我的代码:

from bs4 import BeautifulSoup
import requests

page = requests.get('http://www.sothebys.com/en/search-results.html?keyword=degas%27')

soup = BeautifulSoup(page.content, "lxml")
print(soup)

我得到以下输出:

<html><head>
<title>Invalid URL</title>
</head><body>
<h1>Invalid URL</h1>
The requested URL "[no URL]", is invalid.<p>
Reference #9.8f4f1502.1494363829.5fae0e0e
</p></body></html>

我可以在同一台机器上使用我的浏览器打开该页面,并且不会收到任何错误消息。当我对另一个 URL 使用相同的代码时,会获取正确的 HTML 内容:

from bs4 import BeautifulSoup
import requests

page = requests.get('http://www.christies.com/lotfinder/searchresults.aspx?&searchtype=p&action=search&searchFrom=header&lid=1&entry=degas')

soup = BeautifulSoup(page.content, "lxml")
print(soup)

我还测试了其他网址(reddit、谷歌、电子商务网站),没有遇到任何问题。因此,相同的代码适用于一个 URL 而不适用于另一个 URL。问题出在哪里?

最佳答案

将您的代码更改为

soup = BeautifulSoup(page.text, "lxml")

如果您使用的是 page.content,那么将字节数组转换为字符串会有所帮助,但您应该使用 page.text

关于python-3.x - 使用 python 3.6 和 beautifulsoup 进行网络抓取 - 获取无效的 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43880195/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com