随笔分类 - 爬虫
摘要:首先我们检测ip是否可用: 1.对于免费代理的检测 #免费代理或不用密码的代理 url = 'http://httpbin.org/get' proxy = '127.0.0.0:8000' proxies = { 'http': 'http://' + proxy, 'https': 'https
阅读全文
摘要:什么是异步加载? 向网站进行一次请求,一次只传部分数据。如:有些网页不需要点击下一页,其内容也可以源源不断地加载。如何发现异步加载? 1、打开浏览器,右键选择“检查” 2、点击“Network”、“XHR” 这样在网页进行不断下拉的过程中,显示器会记录全部动作。可以看到不断加载新的页。如何加载异步数
阅读全文
摘要:Scrapy一个开源和协作的框架,其最初是为了页面抓取 (更确切来说, 网络抓取 )所设计的,使用它可以以快速、简单、可扩展的方式从网站中提取所需的数据。但目前Scrapy的用途十分广泛,可用于如数据挖掘、监测和自动化测试等领域,也可以应用在获取API所返回的数据(例如 Amazon Associa
阅读全文
摘要:一,案例 爬取站长素材中的图片:http://sc.chinaz.com/tupian/gudianmeinvtupian.html import requestsfrom lxml import etreeimport osurl = "http://sc.chinaz.com/tupian/gu
阅读全文
摘要:恰当的使用线程池可以很大程度上的提升爬去速率,下面介绍一个使用线程池的案例
阅读全文
摘要:一.urllib库 概念:urllib是Python自带的一个用于爬虫的库,其主要作用就是可以通过代码模拟浏览器发送请求。其常被用到的子模块在Python3中的为urllib.request和urllib.parse,在Python2中是urllib和urllib2。 使用流程: 指定url 基于u
阅读全文
摘要:一,分布式爬虫介绍 1.scrapy框架为何不能实现分布式? 其一:因为多台机器上部署的scrapy会各自拥有各自的调度器,这样就使得多台机器无法分配start_urls列表中的url。(多台机器无法共享同一个调度器) 其二:多台机器爬取到的数据无法通过同一个管道对数据进行统一的数据持久出存储。(多
阅读全文
摘要:一,介绍 CrawlSpider其实是Spider的一个子类,除了继承到Spider的特性和功能外,还派生除了其自己独有的更加强大的特性和功能。其中最显著的功能就是”LinkExtractors链接提取器“。Spider是所有爬虫的基类,其设计原则只是为了爬取start_url列表中网页,而从爬取到
阅读全文
摘要:一、利用selenium 爬取 网易军事新闻 使用流程: 首先需要在中间件导入 DownloadMiddleware函数 spider.py 还需要注意的是使用中间件的同时需要在settings中解释一下Downloadmiddleware 结果是这样就成功喽
阅读全文
摘要:一.POST请求 二.请求传参 - 在某些情况下,我们爬取的数据不在同一个页面中,例如,我们爬取一个电影网站,电影的名称,评分在一级页面,而要爬取的其他电影详情在其二级子页面中。这时我们就需要用到请求传参。 ex:爬取www.id97.com电影网,将一级页面中的电影名称,类型,评分一级二级页面中的
阅读全文
摘要:一,介绍 Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架,非常出名,非常强悍。所谓的框架就是一个已经被集成了各种功能(高性能异步下载,队列,分布式,解析,持久化等)的具有很强通用性的项目模板。对于框架的学习,重点是要学习其框架的特性、各个功能的用法即可。 二,安装 三.基本使用
阅读全文
摘要:一, 基于requests模块的cookie操作 引言:有些时候,我们在使用爬虫程序去爬取一些用户相关信息的数据(爬取张三“人人网”个人主页数据)时,如果使用之前requests模块常规操作时,往往达不到我们想要的目的,例如: - 结果发现,写入到文件中的数据,不是张三个人页面的数据,而是人人网登陆
阅读全文
摘要:一,Xpath基本语法 安装使用: 测试页面数 xpath表达式: 二 ,获取boss直聘中的职位信息
阅读全文
摘要:简介 BeautifulSoup是用来从HTML或XML中提取数据的Python库。 对于不具备良好格式的 HTML 内容,lxml 提供了两个有用的包:lxml.html 模块和 BeautifulSoup 解析器 一,安装 或者: 二,基本使用 ex:使用bs4实现将诗词名句网站中三国演义小说的
阅读全文
摘要:一,介绍 大多数情况下的需求,我们都会指定去使用聚焦爬虫,也就是爬取页面中指定部分的数据值,而不是整个页面的数据。 因此数据爬取的流程为: 二,正则解析数据 常用正则表达式回顾: 单字符: . : 除换行以外所有字符 [] :[aoe] [a-w] 匹配集合中任意一个字符 \d :数字 [0-9]
阅读全文
摘要:一,介绍 requests模块是python中原生的基于网络请求的模块,其主要作用是用来模拟浏览器发起请求。功能强大,用法简洁高效。在爬虫领域中占据着半壁江山的地位。 使用requests可以模拟浏览器的请求,比起之前用到的urllib,requests模块的api更加便捷(本质就是封装了urlli
阅读全文
摘要:1,基本概念 1、什么是互联网? 互联网是由网络设备(网线,路由器,交换机,防火墙等等)和一台台计算机连接而成,像一张网一样。 2、互联网建立的目的? 互联网的核心价值在于数据的共享/传递:数据是存放于一台台计算机上的,而将计算机互联到一起的目的就是为了能够方便彼此之间的数据共享/传递,否则你只能拿
阅读全文