(我是网页抓取的初学者)我想抓取这个链接: https://www.seloger.com/list.htm?tri=initial&idtypebien=1,2&pxMax=3000000&div=2238&idtt=2,5&naturebien=1,2,4&LISTING-LISTpg=2
当我试图显示回购清单时,我得到的是[],而不是html代码!!!`你知道吗
import requests
from bs4 import BeautifulSoup
page = requests.get('https://www.seloger.com/list.htm?tri=initial&idtypebien=1,2&pxMax=3000000&div=2238&idtt=2,5&naturebien=1,2,4&LISTING-LISTpg=2')
soup = BeautifulSoup(page.text, 'html.parser')
repo = soup.find(class_="c-wrap")
print(repo)
repo_list = repo.find_all(class_='c-pa-list c-pa-sl c-pa-gold cartouche ')
print(repo_list)
当调用
find_all
时,它返回一个标记列表到html的一个子集,如果没有匹配的标记,则返回一个空列表。所以你要搜索的标签在页面中找不到!这可能有很多原因。你可能在你搜索的类中有一个输入错误,或者你搜索的值不是一个类而是一个id或者其他属性。你知道吗一些页面(通常是较大的网络应用程序,如facebook、instagram、twitter等)会动态创建类、id等,并采取一些小技巧来防止数据被窃取。如果你想看看一个网站会允许你做些什么,你可以查看所谓的
robots.txt
。你知道吗例如,如果你想抓取reddit,你可以去https://reddit.com/robots.txt查看你可以从他们的域中找到的uri列表!网站还将包含一个
sitemap
,这是一个xml(类似于html)文档,其中包含指向可用页面的链接!你知道吗您可以将regex输出,进行一点字符串清理,然后传递给json,然后将每个产品作为包含每个列表信息的字典打印出来
返回示例(第3页):
例如,价格为:
很棒的教程:
https://www.youtube.com/watch?v=ind-mugxMxk
相关问题 更多 >
编程相关推荐