我之前有写过很多关于爬虫的文章,收到很多小伙伴的私信,感觉大家对爬虫还是很感兴趣的。可能是因为进入爬虫这个圈子后大家发现爬虫很能提高我们的工作效率。Python爬虫功能可以说是异常强大,爬虫圈一直流行这么句话“万物皆可爬”,作为Python语言中实用性最强,且新手学习回报率最高,最容易获得成就感的一大模块,深受广大入门新手所喜爱。那么爬虫需要学到那些方面的知识呢?今天我们就重点来讲解下 知识体的掌握 1、核心技术的掌握,竟然叫核心技术,那说明这很重要,做爬虫就一定要用到这些技能,爬虫就是http去发送消息;爬虫获得的东西就是HTML、JSON、XML;通过 DOM、XPath、CSS、Selector 这些把数据给摘出来;JavaScript也是网页的一个组成部分,这些核心技术就是爬虫必嘘掌握的知识。 2、掌握工具,常用的就是这些:Selenium、Postman、Chrome、MySQL 3、requests请求、scrapy框架、re正则表达式、beautifulsoup 抓取数据等。所以爬虫学起来对于初学者会有一点困难,那是因为它用到了很多通用的东西。实际上python相关的东西并不多,而且都是比较简单的。 4、Scrapy框架与实战,重点是掌握一下些高级技巧,例如ip池(这里重点可以搜索亿牛云获取详细资料学习) - #! -*- encoding:utf-8 -*-
- import requests
- import random
- # 要访问的目标页面
- targetUrl = "http://httpbin.org/ip"
- # 要访问的目标HTTPS页面
- # targetUrl = "https://httpbin.org/ip"
- # 代理服务器(产品官网 www.16yun.cn)
- proxyHost = "t.16yun.cn"
- proxyPort = "31111"
- # 代理验证信息
- proxyUser = "username"
- proxyPass = "password"
- proxyMeta = "http://%(user)s:%(pass)s@%(host)s:%(port)s" % {
- "host" : proxyHost,
- "port" : proxyPort,
- "user" : proxyUser,
- "pass" : proxyPass,
- }
- # 设置 http和https访问都是用HTTP代理
- proxies = {
- "http" : proxyMeta,
- "https" : proxyMeta,
- }
复制代码
伪装头、验证码等特殊情况的处理方法,能够使用多线程与分布式的技术提高数据爬去效率,适合大数据场景使用,还需掌握Scrapy框架开发高可用的爬虫系统。在数据爬取过程中会遇到各种特殊情况,需要多动手,多动脑解决。 最后总结:爬虫的实战我们可以从爬取没有反爬机制的网站到爬取有专业反爬机制的网站。这是一个学习 的重点过程。
|