xpath从此放弃正则表达式
来源:互联网 发布:尤因数据 编辑:程序博客网 时间:2024/06/11 17:25
- 本次的问题是从网页中提取url产生的。地址http://beijing.anjuke.com/sale/
- xpath介绍自己百度,这里有两个重点,提取文本内容/text(),提取属性内容/@xxx
- 下面举例说明使用介绍,前提条件有lxml模块
首先点击图片,查看元素,得到xpath
5.得到的是原始是”//[@id=”houselist-mod”]/li[2]/div[1]/img” 这里我要提取的img里面的src,从结构中我们很容易得到修改后的结果”//[@id=”houselist-mod”]/li/div[1]/img/@src”
6.这里最好把页面的源代码保存下来,放在一个本地文件中,因为我试了,直接通过代码得到源代码的,中间最重要的部分,得不到。下面的代码展示
#coding:utf-8import refrom lxml import etreeclass splider: def printurl(self): te=open("3.txt") cont=te.read() selector=etree.HTML(cont) texturl=selector.xpath('//*[@id="houselist-mod"]/li/div[1]/img/@src') print "符合条件个数" +str(len(texturl)) for text in texturl: print textif __name__ == '__main__': sp=splider() sp.printurl()
7.再举一个得到内容的例子
得到的原始内容是//[@id=”houselist-mod”]/li[2]/div[2]/div[2]/span[1]分析得到//[@id=”houselist-mod”]/li/div[2]/div[2]/span/text() 这里我做了点处理。信息成条显示。
#coding:utf-8import refrom lxml import etreeclass splider: def printurl(self): te=open("3.txt") cont=te.read() selector=etree.HTML(cont) texturl=selector.xpath('//*[@id="houselist-mod"]/li/div[2]/div[2]/span/text()') i=0; detail="" for text in texturl: if i==5: print detail[:-1] i=1; detail=text+"|" else: i=i+1 detail=detail+text+"|"if __name__ == '__main__': sp=splider() sp.printurl()
0 0
- xpath从此放弃正则表达式
- JavaScript正则表达式从放弃到入门
- 通过WebMagic认识正则表达式和XPATH
- XPath表达式
- XPath表达式
- XPath表达式
- xpath 表达式
- XPATH表达式
- XPath表达式
- xpath表达式
- xPath表达式
- python爬虫提取信息:正则表达式和xpath
- 用python写网络爬虫-使用xpath代替正则表达式
- 写给急功过利的百度:从此放弃百度空间
- Realm数据库 从入门到“放弃”,从此告别sqlist
- XPath常用表达式
- XML中的XPath表达式
- 常用的XPath表达式
- Android版微信聊天对话框中输入如下代码会有一些神奇的用途
- CTO、技术总监、首席架构师的区别
- HOJ 2018 题解
- 解析XML:DOM,SAX,PULL
- MySQL数据库优化
- xpath从此放弃正则表达式
- 【决策树】熵及ID3算法Python示例
- android开发艺术探索事件分发总结
- 如何使用php中ftp函数上传文件以及解决php上传文件失败的方法
- 1.python开源——scrapy抓取豆瓣信息
- java中将PDF转图片格式
- springmvc4开发学习(第五讲)
- Js misc
- 深度拷贝和浅度拷贝