python中的xpath爬虫实例,新人处女作!!!

首先声明,自己算是小白,还是偏感性女性思维,刚接触python没有多久,所以以下文字中有不专业的地方,请多多指出,不吝赐教。我是学了正则和bs4然后学的xpath,其实我开始并不想做笔记,但是发现自己学完了之后就全忘记了,特意做一下笔记。我着重讲实例。

求点赞、评论、关注!!!!!!

可以先看一下xpath的基本逻辑:

#xpath解析原理:
 -1.实例化一个etree的对象,且需要将被解析的页面源码数据加载到该对象中
 -2.调用etree对象的xpath方法结合着xpath表达式实现标签的定位和内容的捕获

#环境的安装
 -pip install lxml

#如何实例化一个etree对象 :from lxml import etree
 -1.将本地的html文档中的源码数据加载到etree对象中:
etree.parse(filePath)   
 -2.可以将从互联网上获取的源码数据加载到该对象中:
etree.parse(filePath)

#xpath表达式
 -/:表示从根节点开始定位,表示的是一个层级
 -//表示多个层级,可以表示从任意位置开始定位
-属性定位://div[@class='song']  tag[@attrName='attrValue']  
-索引定位://div[@class='song']/p[3] 索引是从1开始的
-取文本:/text()   
-取属性:/@attrName    ==>img/@src 

1.第一个案例:爬取链家的二手房信息,要求能输出二手房页面的二手房标题和价钱

--先导入模块,发起网络请求,得到这种二手房列表界面,然后把网页etree对象化,再调用xpath方法

import requests
from lxml import etree
if __name__=='__main__':
# 需求:爬取链家的二手房信息
# 1.爬取页面源码数据
    url1='https://sh.lianjia.com/ershoufang/pudong/'
    headers={'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) '
                          'AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.159 Safari/537.36'}
    response=requests.get(url1,headers)
    lianjia_text=response.text

 --注意看xpath里面怎么写的,你看一下网页的源代码,会发现这些二手房的一套信息全都以li标签的形式存储,放在了ul的标签里面 。

 # 数据解析
    tree=etree.HTML(lianjia_text)
    print(lianjia_text)
    li_list=tree.xpath('//ul[@class="sellListContent"]/li') 这是一个列表,里面存放着所有的li标签

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值