我从Python和BeautifulSoup开始。我想用BS刮一个网站,我不明白我的代码结果和find
和find_all
的用法。我想在href
标记中获取一个URL。你知道吗
<div class="xBRiJc">
<a href="https://play.google.com/store/apps/collection/cluster?
clp=igNLChkKEzc4NDcxODQ2MTE5MjkxMDc4NTgQCBgDEiwKJmFhZGVtby5zdXBlcmF3ZXNvbWUudHYuYXdlc29tZWFkc2RlbW8yEAEYAxgB:S:ANO1ljKZ36s&gsr=Ck6KA0sKGQoTNzg0NzE4NDYxMTkyOTEwNzg1OBAIGAMSLAomYWFkZW1vLnN1cGVyYXdlc29tZS50di5hd2Vzb21lYWRzZGVtbzIQARgDGAE%3D:S:ANO1ljKKOPI"> .
<h2 class="C7Bf8e bs3Xnd">SuperAwesome LTD</h2></a></div>
下面是我的python代码:
developer_link = bs.find("div",{"class":"xBRiJc"})
print(developer_link.get('href'))
为什么我的print
命令的结果是“None”,而不是href
标记中的URL?你知道吗
您将
developer_link
定义为包含链接的<div>
标记,而不是链接本身。由于div标记本身没有“href”参数,developer_link.get('href')
将返回None
。所以你只需要更进一步:但是看看这个例子,我猜div的类是动态生成的。如果是这样,那么当您重新访问页面时,div的类可能不是“xBRiJc”,这意味着它不是链接的可靠标识符。如果您只是想获取文本中包含“SuperAwesome LTD”的第一个链接,那么可以使用一些regex技巧来获取基于tht的链接。但是如果你知道你的链接里面有一个H2标签,它的实际文本是“SuperAwesome LTD”,那么你可以这样做:
相关问题 更多 >
编程相关推荐