爬虫

网页三大特征:

  1. 每个网页都有自己的url来定位
  2. 网页都是用HTML来描述页面信息
  3. 网页都是用HTTP/HTTPS鞋业来传输HTML数据

爬虫的设计思路:
1.确定需要爬取的网页url地址
2.通过HTTP/HTTPS鞋业来获取对应的HTML页面
3。提取HTML页面里有用的数据

为什么选择Python做爬虫:

  • PHP:虽然是世界上最好的语言,但是对多线程、异步支持不好,并发处理能力
  • Java:网络爬虫较为完善,但是Java语言本身很笨重,重复代码很多,重构成本很高,任何修改都会导致代码的大量变动。
  • C/C++:运行效率和性能最强,但是学习成本很高,代码成型很慢。
  • Python:语法优美、代码简介、支持的模块多,调用其他接口方便(胶水语言)

如何住区HTML页面:
HTTP请求的处理,urllib、urllib2、requests
处理后的请求可以模拟浏览器发送请求,获取服务器相应的文件

解析服务器相应的内容
——-re、xpath、BeautifulSoup4(bs4)、jsonpath、pyquery等
——-使用某种描述性语言来给我们需要提取的数据定义一个匹配规则

如何采集动态HTML、验证码的处理
——-通用的动态页面采集:Selenium、PhantomJS(无界面):模拟真实浏览器
——-机器识别验证码Tesseract。

Scrapy框架:
——-高定制性高性能(异步网络框架twisted),所以数据下载速度快
——-提供了数据存储、数据下载、提取规则等组件

分布式策略:
——-scrapy-redis,以Redis数据库为核心的一套组件

通用爬虫:搜索引擎用的爬虫系统
目标:尽可能将所有的网页都下载下来,放到本地服务器形成备用数据,
——-然后进行处理,最后提供一个用户检索接口
缺点:
——–只能提供文本内容不能提供多媒体文件和二进制文件
——-提供结果千篇一律
——-不能理解人类语义上的检索

聚焦爬虫:程序员写的正对某种需求的爬虫

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值