Python 爬虫学习笔记二: xpath 模块

Python 爬虫学习笔记二: xpath from lxml

  1. 首先应该知道的是xpath 只是一个元素选择器, 在python 的另外一个库lxml 中, 想要使用xpath 必须首先下载lxml 库
  2. lxml 库的安装: 很简单, 具体请查看 http://www.jianshu.com/p/2bc5aa0db486
    上述链接中有如何安装lxml , 以及如何使用xpath的入门程序, 以及xpath 的初始语法
pip install lxml

初始实践的code 记录:

from lxml import etree
import requests
url = 'http://sh.lianjia.com/ershoufang/'
region = 'pudong'
finalURL = url+region
price = 'p23'
r= requests.get(finalURL)
r.text
html = requests.get(finalURL).content.decode('utf-8')
dom_tree = etree.HTML(html)
links = dom_tree.xpath("//div/span[@class='info-col row2-text']/a")

for i in links:
    print(i.text)

links_yaoshi = dom_tree.xpath("//div/span[@class='c-prop-tag2']")

for i in links_yaoshi:
   print(i.text)

links_danjia = dom_tree.xpath("//span[@class='info-col price-item minor']")

for index in range(len(links_yaoshi)):
    print(index)
    print(links[index].text)
    print(links_yaoshi[index].text)
    print(links_danjia[index].text)

本来想要将这些不同标签下的信息分别取出,在打印的时候再将信息进行合并, 但是输出的结果格式不符合标准并且爬出的element数量不一致导致代码报错。
一定注意 xpath 查找提取结果是可以用“|”来提取多个results, 所以最终的code 如下:

from lxml import etree
import requests
url = 'http://sh.lianjia.com/ershoufang/'
region = 'pudong'
finalURL = url+region
price = 
  • 6
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值