写在前面

本人的所有文章只适合善于使用百度的人,因为所有基础知识个个博客复制粘贴了无数遍,我这里均不会详细讲述。

在这里我表示所有不经验证的转载都是耍流氓,把一篇篇错误的文章转载的到处都是,不知道浪费了多少人的时间精力去反复调试错误的代码,尤其是对初学者有极大的打击性。

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


Element是什么

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

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

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

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


from bs4 import BeautifulSoup
from lxml import etree
import requestsgjc='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>标签名aprint(links[index].attrib)#获取<a>标签的属性href和classprint(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" class="download">磁力链接</a>

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

总结

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

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

讲讲python使用xpath中遇到[Element a at 0x39a9a80到底是什么相关推荐

  1. python 0xa什么意思_python使用xpath中遇到:Element a at 0x39a9a80到底是什么?

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

  2. python爬虫xpath提取数据_python爬虫三大解析库之XPath解析库通俗易懂详讲

    @(这里写自定义目录标题) 使用XPath解析库 1.简介 ??XPath(全称XML Path Languang),即XML路径语言,是一种在XML文档中查找信息的语言.适用于XML和HTML文档的 ...

  3. xpath中两个冒号_爬虫学习(5)—XPath

    之前我们写了一个简单的爬虫,在提取页面信息时我们使用正则表达式来匹配内容,但是正则表达式的书写比较繁琐,而且一旦错误就可能导致匹配失败.对于网页的节点来说,它可以定义id,class或其他的属性,而且 ...

  4. python—selenium —xpath定位方法详解

    前言 今天我们来聊聊selenium -- xpath定位方法,我们都知道selenium有八大定位策略分别是id.name.class name.tag name.link text.partial ...

  5. python爬虫xpath的语法

    有朋友问我正则,,okey,其实我的正则也不好,但是python下xpath是相对较简单的 简单了解一下xpath: XPath 是一门在 XML 文档中查找信息的语言.XPath 可用来在 XML ...

  6. 实际上,Python 3.3中新的“ yield from”语法的主要用途是什么?

    本文翻译自:In practice, what are the main uses for the new "yield from" syntax in Python 3.3? I ...

  7. xpath的数据和节点类型以及XPath中节点匹配的基本方法

    XPath数据类型  XPath可分为四种数据类型:  节点集(node-set)  节点集是通过路径匹配返回的符合条件的一组节点的集合.其它类型的数据不能转换为节点集.  布尔值(boolean)  ...

  8. python的xpath用法_python之Xpath语法

    python视频教程栏目介绍python的Xpath语法. 一.XMl简介 (一)什么是 XMLXML 指可扩展标记语言(EXtensible) XML 是一种标记语言,很类似 HTML. XML 的 ...

  9. python在工作中怎么用_如何用python在工作中“偷懒”

    原标题:如何用python在工作中"偷懒" "偷懒还能干完活,才是本事 " 有些朋友在工作中会有这样的困惑:明明我从早忙到晚,为什么得到的评价还不高? 要知道, ...

最新文章

  1. 兼容Silverlight4的实用的Silverlight可拖放工具类源代码
  2. HDU 1080 Human Gene Functions
  3. 2021-03-15 数据挖掘算法—K-Means算法 Python版本
  4. 数字图像处理:第十九章 立体视觉
  5. leetcode 220. Contains Duplicate III | 220. 存在重复元素 III (Treeset解法+分桶解法)
  6. perl xml dom中文乱码问题解决
  7. WebSocket-nodejs实现
  8. IOS学习笔记二十一(NSDictionary、NSMutableDictionary)
  9. Vuejs开发环境搭建及热更新
  10. OkHttp+Stetho+Chrome调试android网络部分(原创)
  11. CentOS7-Docker 配置国内镜像源
  12. weblogic中删除自动部署项目
  13. 字节跳动联邦学习平台通过中国信通院首批评估 数据安全能力得到专业验证
  14. FLASH缓动导航制作方法.
  15. Dism++管理优化windows
  16. 淘宝/天猫API:item_search_jupage-天天特价
  17. 为什么有些蓝牙耳机有底噪?高音质便宜实惠的蓝牙耳机分享
  18. mysql 查找员工入职时间
  19. 文献阅读-CSC-中文错别字-有关论文搜集-+CGED
  20. docker是干什么的_Docker超简单入门教程

热门文章

  1. String.format()的使用
  2. iOS和android的屏幕适配
  3. activity的启动窗口
  4. ubuntu adb 调试手机
  5. Fragment 与DialogFragment 相互之间传递数据
  6. Android应用开发SharedPreferences存储数据的使用方法
  7. Python闭包与装饰器
  8. JVM学习笔记之-拉圾回收概述,垃圾回收相关算法
  9. SDNU 1477.矩形面积交(思维)
  10. 剑指Offer——不用加减乘除做加法