yzdlkxkl 2022-01-26 10:36 采纳率: 88.9%
浏览 64
已结题

xpath方法请求出来列表为空,不知道是不是代码编写的问题

利用xpath方法抓取的列表为空
需求:抓取房源的标题,地址,户型,价格
网址:https://changde.58.com/xinfang/?PGTID=0d100000-0036-8bd3-6159-08ef6dac6e41&ClickID=4
有谁可帮我看一下 嘛

# 需求:爬取58同城上常德新房的房源信息
import requests
from lxml import etree
headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:96.0) Gecko/20100101 Firefox/96.0'
}
# 抓取页面源码数据
url = 'https://changde.58.com/xinfang/?PGTID=0d100000-0036-8511-a0ff-530399c9a35a&ClickID=2'
page_text = requests.get(url=url, headers=headers).text
# 数据解析
tree = etree.HTML(page_text)
div_list = tree.xpath('//div[@class="key-list imglazyload"]/div')

f1 = open('./changDe fangYuan.txt', 'w', encoding='utf-8')
for div in div_list:
    # 局部解析
    items_name = div.xpath('./div/a[1]/span/text()')[0]
    address = div.xpath('./div/a[2]/span/text()')[0]
    HuXing = div.xpath('./div/a[3]/span/text()')[0]
    price = div.xpath('./a[2]/p/span/text()')[0]
    f1.write(items_name+address+HuXing+price)

print('打印成功!')


  • 写回答

6条回答 默认 最新

  • CSDN专家-HGJ 2022-01-26 11:00
    关注

    将f1 = open('./changDe fangYuan.txt', 'w', encoding='utf-8')
    写成:
    f1 = open('fangYuan.txt', 'w', encoding='utf-8')
    将f1.write(items_name+address+HuXing+price)改成:
    f1.write(items_name+'\n'+address+'\n'+HuXing+'\n'+price)
    运行代码,然后在当前目录下生成这个文本文件,打开就可以看到结果了

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

报告相同问题?

问题事件

  • 系统已结题 2月3日
  • 已采纳回答 1月26日
  • 修改了问题 1月26日
  • 创建了问题 1月26日

悬赏问题

  • ¥15 PointNet++的onnx模型只能使用一次
  • ¥20 西南科技大学数字信号处理
  • ¥15 有两个非常“自以为是”烦人的问题急期待大家解决!
  • ¥30 STM32 INMP441无法读取数据
  • ¥15 R语言绘制密度图,一个密度曲线内fill不同颜色如何实现
  • ¥100 求汇川机器人IRCB300控制器和示教器同版本升级固件文件升级包
  • ¥15 用visualstudio2022创建vue项目后无法启动
  • ¥15 x趋于0时tanx-sinx极限可以拆开算吗
  • ¥500 把面具戴到人脸上,请大家贡献智慧,别用大模型回答,大模型的答案没啥用
  • ¥15 任意一个散点图自己下载其js脚本文件并做成独立的案例页面,不要作在线的,要离线状态。