‘壹’ 1.Scrapy爬虫之静态网页爬取之一 了解response.xpath()
我们直接看例子:
网址: http://quotes.toscrape.com/
1. xpath提取方法:
用谷歌浏览器打开网页,右键检查,选中标签--xpath
2.如何得到网页信息:
在jupyter中的terminal中(jupyter中的termimal不能运行在windows系统中) 输入 scrapy shell http://quotes.toscrape.com/
会有请求信息返回,返回response对象,里面包含网页所有信息。
楼主安装了3.6的anaconda,但是里面没集成scrapy框架。但是也安装了python2.7,里面成功安装了scrapy(添加环境变量了,命令行任意位置识别scrapy命令,不添加环境变量的话,只在它的文件夹下识别这个命令)。打开windows命令行,同样键入:scrapy shell http://quotes.toscrape.com/ 会有请求信息返回。[s]开头
如下:
response是请求后所返回的对象,200说明返回正确
要验证表达式对不对,会返回一个对象叫response,这个response包含了这个网页的所有内容:
3.如何自己写xpath获取同一标签下的所有信息:
‘贰’ Python写爬虫都用到什么库
Python爬虫,全称Python网络爬虫,是一种按照一定的规则,自动地抓取万维网信息的程序或脚本,主要用于抓取证券交易数据、天气数据、网站用户数据和图片数据等,Python为支持网络爬虫正常功能实现,内置了大量的库,主要有几种类型。下面本篇文章就来给大家介绍。
一、Python爬虫网络库
Python爬虫网络库主要包括:urllib、requests、grab、pycurl、urllib3、httplib2、RoboBrowser、MechanicalSoup、mechanize、socket、Unirest for Python、hyper、PySocks、treq以及aiohttp等。
二、Python网络爬虫框架
Python网络爬虫框架主要包括:grab、scrapy、pyspider、cola、portia、restkit以及demiurge等。
三、HTML/XML解析器?
●lxml:C语言编写高效HTML/ XML处理库。支持XPath。
●cssselect:解析DOM树和CSS选择器。
●pyquery:解析DOM树和jQuery选择器。
●BeautifulSoup:低效HTML/ XML处理库,纯Python实现。
●html5lib:根据WHATWG规范生成HTML/ XML文档的DOM。该规范被用在现在所有的浏览器上。
●feedparser:解析RSS/ATOM feeds。
●MarkupSafe:为XML/HTML/XHTML提供了安全转义的字符串。
●xmltodict:一个可以让你在处理XML时感觉像在处理JSON一样的Python模块。
●xhtml2pdf:将HTML/CSS转换为PDF。
●untangle:轻松实现将XML文件转换为Python对象。
四、文本处理
用于解析和操作简单文本的库。
●difflib:(Python标准库)帮助进行差异化比较。
●Levenshtein:快速计算Levenshtein距离和字符串相似度。
●fuzzywuzzy:模糊字符串匹配。
●esmre:正则表达式加速器。
●ftfy:自动整理Unicode文本,减少碎片化。
五、特定格式文件处理
解析和处理特定文本格式的库。
●tablib:一个把数据导出为XLS、CSV、JSON、YAML等格式的模块。
●textract:从各种文件中提取文本,比如 Word、PowerPoint、PDF等。
●messytables:解析混乱的表格数据的工具。
●rows:一个常用数据接口,支持的格式很多(目前支持CSV,HTML,XLS,TXT:将来还会提供更多!)。