加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

xpath基本使用

发布时间:2020-12-16 22:38:08 所属栏目:百科 来源:网络整理
导读:xpath基本使用 一.安装lxml包 pip install lxml 二.使用 1.使用: from lxml import etree ? # 导包 import requests ? response = resquests. get( ‘www.baidu.com‘) # 生成一个html对象 # html = etree.parse(html文档) ? # 参数为 html文档 html = etree

xpath基本使用

一.安装lxml包

pip install lxml

二.使用

1.使用:

from lxml import etree ? # 导包
import requests
?
response = resquests.get(‘www.baidu.com‘)
# 生成一个html对象
# html = etree.parse(html文档) ? # 参数为 html文档
html = etree.HTML(response.text) ?# 参数为字符串文本
div = html.xpath(‘xpath表达式‘) ? # 返回一个文本列表

?

1.获取最外面标签,遍历内部所有的子标签,获取标签文本

content_list =div.xpath(‘.//div[@class="d_post_content j_d_post_content "]/text()‘).extract()

2.正则去掉所有标签 <.*?> re.compile.sub()

content_list=div.xpath(‘.//div[@class="d_post_content j_d_post_content "]‘)

pattern=re.compile(r(‘<.*?>‘),re.S)

content=pattern.sub(‘‘,content_list)

3./text() 获取标签的文本 //text()获取标签以及子标签的文本

content_list = div.xpath(‘.//div[@class=”d_post_content j_d_post_content “]//text()’).extract()

4 使用xpath(‘string(.)’)这种方式获取所有文本 并且拼接

content_list=div.xpath(‘.//div[@class="d_post_content j_d_post_content "]‘).xpath(‘string(.)‘).extract()[0]+‘n‘

文本内容获取之后print(content_list)查看内容,如需处理格式,则如下:

remove = re.compile(‘s‘) content = ‘‘ for string in content_list: string = remove.sub(‘‘,string) content += string

?

string方法: content = div.xpath(‘string(.//div[@class="content"])‘).strip() # 获取该div下所有文本组成一个字符串

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读