cdsn_Python 2022-07-17 22:19 采纳率: 69%
浏览 44
已结题

学习用seleium学习爬虫时遇到的问题

问题遇到的现象和发生背景

学习爬虫,用selenium爬Airbnb。

问题相关代码,请勿粘贴截图

from selenium import webdriver
link="https://www.airbnb.cn/s/Shenzhen--China/homes"
driver=webdriver.Firefox(executable_path=r"C:\网络下载专区\geckodriver-v0.31.0-win64\geckodriver.exe")
driver.get(link)
rent_list=driver.find_elements_by_css_selector("div._qlq27g")
print(len(rent_list))

运行结果及报错内容

5

进程已结束,退出代码0

我的解答思路和尝试过的方法

理论上一个页面应该有20条信息,但每次只爬出来5个,不知道为啥。

我想要达到的结果

希望能解释出错原因。

  • 写回答

2条回答 默认 最新

  • 关注

    页面初始就是只有5个class是_qlq27g的div
    之后是用js动态更新到20个的
    用time.sleep(5)延时一下,等到js动态更新后再获取即可
    你题目的解答代码如下:

    from selenium import webdriver
    import time
    link="https://www.airbnb.cn/s/Shenzhen--China/homes"
    driver=webdriver.Firefox(executable_path=r"C:\网络下载专区\geckodriver-v0.31.0-win64\geckodriver.exe")
    driver.get(link)
    time.sleep(5)  #延时一下,等到js动态更新后再获取
    rent_list=driver.find_elements_by_css_selector("div._qlq27g")
    print(len(rent_list))
    

    如有帮助,请点击我的回答下方的【采纳该答案】按钮帮忙采纳下,谢谢!

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 7月25日
  • 已采纳回答 7月17日
  • 创建了问题 7月17日

悬赏问题

  • ¥15 Pyqt 如何正确的关掉Qthread,并且释放其中的锁?
  • ¥30 网站服务器通过node.js部署了一个项目!前端访问失败
  • ¥15 WPS访问权限不足怎么解决
  • ¥15 java幂等控制问题
  • ¥15 海湾GST-DJ-N500
  • ¥15 氧化掩蔽层与注入条件关系
  • ¥15 Django DRF 如何反序列化得到Python对象类型数据
  • ¥15 多数据源与Hystrix的冲突
  • ¥15 如何在线硕士了解,广告太多,希望有真实接触过的人回答下?(标签-学习|关键词-在线硕士)
  • ¥15 zabbix6.4与frp如何进行联动