quasar丶 2021-06-04 17:40 采纳率: 50%
浏览 38
已采纳

爬取链家网房源数据,无法成功翻页,求解

from selenium import webdriver
import csv
# 时间库:可以控制延迟时间
import time
url="https://tj.lianjia.com/"
browser=webdriver.Chrome()
# 窗口最大化
browser.maximize_window()
browser.get(url)
# 通过选择器找到相应标签
browser.find_element_by_css_selector("#keyword-box").send_keys("北辰区")
# 模拟用户点击行为
browser.find_element_by_css_selector("#findHouse").click()
# print(browser.page_source)
    # 控制页数
x = 1
    # 控制条数 1-30  31-60 61-90
    # while结束条件是判断是否到了最后一页
    # 判断是否到了最后一页的标准是:下一页不能点击
    # 当前源码中是否存在“pn-next.disabled”
    # 如果不存在,返回-1
    # 如果返回-1,说明不是最后一页
# next = browser.find_element_by_css_selector("#content > div.leftContent > div.contentBottom.clear > div.page-box.fr > div > a:nth-child(8)")
# print(next)
# z= 0
# while():
#     z += 1
#     if z <= 20:
#         break
z=0
for z in range(10):
    z+=1
    if(z<=10):
        liList = browser.find_elements_by_css_selector("#content > div.leftContent > ul > li")
        for i in liList:
            price = i.find_element_by_css_selector(
                " div.info.clear > div.priceInfo > div.totalPrice").text
            print(price)
                    # shop=i.find_element_by_css_selector("div > div.p-shop > span > a").text
                    # print(shop)
                    # jianjie=i.find_element_by_css_selector(" div > div.p-name.p-name-type-2 > a > em").text
                    # print(jianjie)
            with open("lianjia2.csv", "a+", encoding="utf-8") as file:
                    data = [price]
                    csv.writer(file).writerow(data)
        browser.find_element_by_css_selector(
            "#content > div.leftContent > div.contentBottom.clear > div.page-box.fr > div > a:nth-child(6)").click()
        print("第%s页数据下载完毕"%x)
        x+=1
        break
time.sleep(5)
  • 写回答

2条回答 默认 最新

  • CSDN专家-黄老师 2021-06-04 17:55
    关注

    应该是翻页的定位不准,可以打开浏览器的开发者工具,可以复制xpath,用xpath定位试试,如果翻页只是在上一页的url增加了参数,可以自己修改url,用browser.get(url)访问第二页

    如果对你有帮助,可以点击我这个回答右上方的【采纳】按钮,给我个采纳吗,谢谢

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

报告相同问题?

悬赏问题

  • ¥50 导入文件到网吧的电脑并且在重启之后不会被恢复
  • ¥15 (希望可以解决问题)ma和mb文件无法正常打开,打开后是空白,但是有正常内存占用,但可以在打开Maya应用程序后打开场景ma和mb格式。
  • ¥15 绘制多分类任务的roc曲线时只画出了一类的roc,其它的auc显示为nan
  • ¥20 ML307A在使用AT命令连接EMQX平台的MQTT时被拒绝
  • ¥20 腾讯企业邮箱邮件可以恢复么
  • ¥15 有人知道怎么将自己的迁移策略布到edgecloudsim上使用吗?
  • ¥15 错误 LNK2001 无法解析的外部符号
  • ¥50 安装pyaudiokits失败
  • ¥15 计组这些题应该咋做呀
  • ¥60 更换迈创SOL6M4AE卡的时候,驱动要重新装才能使用,怎么解决?