python使用xpath中遇到:到底是什么?


Posted in Python onJanuary 04, 2018

前言

大家在学习python爬虫的过程中,会发现一个问题,语法我看完了,说的也很详细,我也认真看了,爬虫还是不会写,或者没有思路,所以我的所有文章都会从实例的角度来解析一些常见的问题和报错。下面话不多说了,来一起看看详细的介绍吧。

Element是什么

回归正题,大家晕头转脑的看完繁杂的语法之后,已经迫不及待写点什么东西了,然后部分同学可能遇到了这个

<Element a at 0x39a9a80>

或者类似 Element a at 0x???????,这样的一个值,然后大家带着问题去搜,然后全是英文啊,什么一大堆乱七八糟的啊,英文不好的同学就崩溃了,在这里,我会重点解析一下

某种意义上来说,当你打印变量的时候得到的这个值,其实它是一个列表,然后列表中的每一个值都是一个字典

如何使用理解请看半成品开车实例,证明了本人非常擅长把学习和乐趣结合起来并且切身解决日常需求,滑稽脸.jpg

from bs4 import BeautifulSoup
from lxml import etree
import requests
gjc='SHKD-700'
#定义URL
html = "http://www.btanv.com/search/"+gjc+"-hot-desc-1"
#解码URL
html = requests.get(html).content.decode('utf-8')
#解析成xml
dom_tree = etree.HTML(html)
#在xml中定位节点,返回的是一个列表
links = dom_tree.xpath("//a[@class='download']")
for index in range(len(links)):
 # links[index]返回的是一个字典
 if (index % 2) == 0:
  print(links[index].tag)
  print(links[index].attrib)
  print(links[index].text)

实例解析

下面重点看看这个代码,

print(links[index])
  print(type(links[index]))
  print(links[index].tag)#获取<a>标签名a
  print(links[index].attrib)#获取<a>标签的属性href和class
  print(links[index].text)#获取<a>标签的文字部分

打印出来的是

<Element a at 0x3866a58>
<class 'lxml.etree._Element'>
a
{'href': 'magnet:?xt=urn:btih:7502edea0dfe9c2774f95118db3208a108fe10ca', 'class': 'download'}
磁力链接

该节点的html代码为

<a href="magnet:xt=urn:btih:7502edea0dfe9c2774f95118db3208a108fe10ca" rel="external nofollow" class="download">磁力链接</a>

看到这里大家应该就非常兽血沸腾的了解了三个属性的用法了。

总结

  • Element类型是'lxml.etree._Element',某种意义来说同时是一个列表
  • 列表的需要使用tag\attrib\text三个不同的属性来获取我们需要的东西
  • 变量.tag获取到的是标签名是---字符串
  • 变量.attrib获取到的是节点标签a的属性---字典
  • 变量.text获取到的是标签文本--字符串

欢迎收藏点赞,拒绝转载,因为目前我也是自学向前摸索,这些都是我目前认知到的东西,肯定有讲的不准确的地方,不希望会误导到他人

好了,以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Python 相关文章推荐
Python自动化测试Eclipse+Pydev 搭建开发环境
Aug 15 Python
Python数据结构与算法之二叉树结构定义与遍历方法详解
Dec 12 Python
Python正则表达式实现简易计算器功能示例
May 07 Python
docker-py 用Python调用Docker接口的方法
Aug 30 Python
python、Matlab求定积分的实现
Nov 20 Python
Python 将json序列化后的字符串转换成字典(推荐)
Jan 06 Python
解决pycharm中导入自己写的.py函数出错问题
Feb 12 Python
python GUI库图形界面开发之PyQt5信号与槽基础使用方法与实例
Mar 06 Python
python交互模式基础知识点学习
Jun 18 Python
Python 日期与时间转换的方法
Aug 01 Python
Python如何在bool函数中取值
Sep 21 Python
Python 生成短8位唯一id实战教程
Jan 13 Python
python使用itchat库实现微信机器人(好友聊天、群聊天)
Jan 04 #Python
python实现微信跳一跳辅助工具步骤详解
Jan 04 #Python
Python中实现最小二乘法思路及实现代码
Jan 04 #Python
Python找出最小的K个数实例代码
Jan 04 #Python
Python编程把二叉树打印成多行代码
Jan 04 #Python
2018年Python值得关注的开源库、工具和开发者(总结篇)
Jan 04 #Python
Win7下Python与Tensorflow-CPU版开发环境的安装与配置过程
Jan 04 #Python
You might like
一次编写,随处运行
2006/10/09 PHP
php curl常见错误:SSL错误、bool(false)
2011/12/28 PHP
浅谈本地WAMP环境的搭建
2015/05/13 PHP
php自定义中文字符串截取函数substr_for_gb2312及substr_for_utf8示例
2016/05/28 PHP
Javascript 继承机制的实现
2009/08/12 Javascript
JavaScript Timer实现代码
2010/02/17 Javascript
dojo学习第一天 Tab选项卡 实现
2011/08/28 Javascript
基于JQuery的抓取博客园首页RSS的代码
2011/12/01 Javascript
使用jQuery.fn自定义jQuery翻页插件
2013/01/20 Javascript
浮动的div自适应居中显示的js代码
2013/12/23 Javascript
jQuery 和 CSS 的文本特效插件集锦
2014/12/12 Javascript
javascript实现连续赋值
2015/08/10 Javascript
jquery实现的Banner广告收缩效果代码
2015/09/02 Javascript
jQuery页面刷新(局部、全部)问题分析
2016/01/09 Javascript
JavaScript Promise 用法
2016/06/14 Javascript
jQuery 如何实现一个滑动按钮开关
2016/12/01 Javascript
巧用Javascript的逻辑运算符
2016/12/02 Javascript
设置cookie指定时间失效(实例代码)
2017/05/28 Javascript
vue.js中过滤器的使用教程
2017/06/08 Javascript
vue mint-ui学习笔记之picker的使用
2017/10/11 Javascript
原生JavaScript实现Ajax异步请求
2017/11/19 Javascript
JS对象与json字符串相互转换实现方法示例
2018/06/14 Javascript
微信小程序使用setData修改数组中单个对象的方法分析
2018/12/30 Javascript
解决layui 表单元素radio不显示渲染的问题
2019/09/04 Javascript
vue resource发送请求的几种方式
2019/09/30 Javascript
vue 验证码界面实现点击后标灰并设置div按钮不可点击状态
2019/10/28 Javascript
修改vue源码实现动态路由缓存的方法
2020/01/21 Javascript
Python lambda和Python def区别分析
2014/11/30 Python
Python中super函数的用法
2017/11/17 Python
在tensorflow中设置使用某一块GPU、多GPU、CPU的操作
2020/02/07 Python
详解Python中的路径问题
2020/09/02 Python
手摸手教你用canvas实现给图片添加平铺水印的实现
2019/08/20 HTML / CSS
英国森林假期:Forest Holidays
2021/01/01 全球购物
实习生自荐信范文分享
2013/11/27 职场文书
毕业生的求职信范文分享
2013/12/04 职场文书
《明天,我们毕业》教学反思
2014/04/24 职场文书