我正试图从网页上获取一个连接到此L'atelier de willy
餐厅的网站链接,但我做不到。你知道吗
这就是它在页面中的显示方式(在同一块中,餐厅名称以非常粗体的字母显示):
我试过:
import requests
from bs4 import BeautifulSoup
link = "https://www.tripadvisor.fr/Restaurant_Review-g188644-d14788983-Reviews-Mozart_More_Than_Just_Ribs-Brussels.html"
res = requests.get(link,headers={"User-Agent":"Mozilla/5.0"})
soup = BeautifulSoup(res.text,"lxml")
website = soup.select_one("[class*='website']").get("data-ahref")
print(website)
我得到的输出:
q5aizCJEIWEVtIiYHVLaizCJEIWHEpttVcL4pIaQtipEnV1zS0pIaQaVMSpa1EVTVEEJc
我希望得到:
https://mozart-resto.be/
如何使用请求获取该网站链接?
为什么不签出https://html.python-requests.org/这是为了使用它来解析网页而编写的。你知道吗
该网站正在使用“asdf”-编码器(我不确定这是否是官方名称)。但是使用来自Converting JavaScript code to Python的回复,您应该能够解码这个字符串:
印刷品:
编辑(用于选择链接):
印刷品:
不幸的是,我还没有评论,这应该是一个评论:(因此,您的代码正在寻找
data_ahref
,它应该得到您的输出所显示的内容。 网站来源显示它说
data-ahref="q5aizCJEIWEVtIiYHVLaizCJEIWHEpttVcL4pIaQtipEnV1zS0pIaQaVMSpa1EVTVEEJc"
。这意味着您的代码工作正常(和bs4)。你知道吗另一件事是,当我点击
Site Web
链接时,我被带到了this link,而不是你想要的链接。在源代码中找不到您想要的链接。你知道吗那么,你确定你在寻找正确的东西吗?你知道吗
编辑: 看着安德烈·凯斯利的答案,我意识到我答案的第一部分并不重要。我没有意识到
data-ahref
实际上是一个编码字符串,即url。你知道吗相关问题 更多 >
编程相关推荐