随笔分类 - 数据采集(爬虫)
摘要:from selenium import webdriver from selenium.webdriver import ChromeOptions from time import sleep from PIL import Image import requests class Get_ahth(): """ 将验证码图片下到本地 """ def __init__(self): self.o
阅读全文
摘要:scrapy - 给scrapy 的spider 传值 方法一: 在命令行用crawl控制spider爬取的时候,加上-a选项,例如: 然后在spider里这样写: 方法二: 在用scrapyd控制spider的时候,可以向schedule.json发送-d选项加入参数,同样的,也需要在spider
阅读全文
摘要:手写分布式爬虫 分布式进程是指将Process进程分布到多台机器上,充分利用多台机器的性能完成复杂的任务。在Python的通过multiprocessing库来完成,该模块不仅支持多进程且还支持将多进程分布到多台机器上。分布式进程就是将把Queue暴露到网络中让其他机器进程可以访问的过程进行了封装,
阅读全文
摘要:pyppetter 1. 环境安装 2. 快速快速上手 爬取http://quotes.toscrape.com/js/ 全部页面数据\ 运行结果:10解释:launch 方法会新建一个 Browser 对象,然后赋值给 browser,然后调用 newPage 方法相当于浏览器中新建了一个选项卡,
阅读全文
摘要:[TOC] Pyhon信息采集 喜马拉雅专辑歌曲 setting.py 喜马拉雅URL XMLY_URL = "https://www.ximalaya.com/revision/play/album?albumId=%s&pageNum=%s&sort= 1&pageSize=30" HEADER
阅读全文
摘要:Matplotlib基础知识 Matplotlib中的基本图表包括的元素 x轴和y轴 axis水平和垂直的轴线 x轴和y轴刻度 tick刻度标示坐标轴的分隔,包括最小刻度和最大刻度 x轴和y轴刻度标签 tick label表示特定坐标轴的值 绘图区域(坐标系) axes实际绘图的区域 坐标系标题 t
阅读全文
摘要:导包: 1. 2. 3. 4. 5. 6. 7. 8. 9.
阅读全文
摘要:[TOC] 高性能的异步爬虫 一. 同步爬取 1. 普通爬取 普通爬取 from time import sleep import time from multiprocessing.dummy import Pool def request(url): print('正在下载:', url) sl
阅读全文
摘要:[TOC] 增量式爬虫 当我们在浏览相关网页的时候会发现,某些网站定时会在原有网页数据的基础上更新一批数据,例如某电影网站会实时更新一批最近热门的电影。小说网站会根据作者创作的进度实时更新最新的章节数据等等。那么,类似的情景,当我们在爬虫的过程中遇到时,我们是不是需要定时更新程序以便能爬取到网站中最
阅读全文
摘要:[TOC] 基于scrapy redis两种形式的分布式爬虫 1.scrapy框架是否可以自己实现分布式? 不可以。原因有二。 其一:因为多台机器上部署的scrapy会各自拥有各自的调度器,这样就使得多台机器无法分配start_urls列表中的url。(多台机器无法共享同一个调度器) 其二:多台机器
阅读全文
摘要:[TOC] scrapy框架的日志等级和请求传参, 优化效率 Scrapy的日志等级 在使用scrapy crawl spiderFileName运行程序时,在终端里打印输出的就是scrapy的日志信息。 日志信息的种类: ERROR : 一般错误 WARNING : 警告 INFO : 一般的信息
阅读全文
摘要:[TOC] UA池和代理池 一. 下载代理池 下载中间件(Downloader Middlewares) 位于scrapy引擎和下载器之间的一层组件。 作用: (1)引擎将请求传递给下载器过程中, 下载中间件可以对请求进行一系列处理。比如设置请求的 User Agent,设置代理等 (2)在下载器完
阅读全文
摘要:[TOC] Python网络爬虫之Scrapy框架(CrawlSpider) 提问:如果想要通过爬虫程序去爬取”糗百“全站数据新闻数据的话,有几种实现方法? 方法一:基于Scrapy框架中的Spider的递归爬取进行实现(Request模块递归回调parse方法)。 方法二:基于CrawlSpide
阅读全文
摘要:[TOC] scrapy框架之递归解析和post请求 递归爬取解析多页页面数据 需求:将糗事百科所有页码的作者和段子内容数据进行爬取切持久化存储 需求分析:每一个页面对应一个url,则scrapy工程需要对每一个页码对应的url依次发起请求,然后通过对应的解析方法进行作者和段子内容的解析。 实现方案
阅读全文
摘要:[TOC] scrapy中selenium的应用 1.案例分析: 需求:爬取网易新闻的国内板块下的新闻数据 需求分析:当点击国内超链进入国内对应的页面时,会发现当前页面展示的新闻数据是被动态加载出来的,如果直接通过程序对url进行请求,是获取不到动态加载出的新闻数据的。则就需要我们使用seleniu
阅读全文
摘要:[TOC] scrapy框架持久化存储 1. 基于终端指令的持久化存储 保证爬虫文件的parse方法中有可迭代类型对象(通常为列表or字典)的返回,该返回值可以通过终端指令的形式写入指定格式的文件中进行持久化操作。 执行输出指定格式进行存储:将爬取到的数据写入不同格式的文件中进行存储 scrapy
阅读全文
摘要:[TOC] scrapy框架简介和基础应用 什么是Scrapy? Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架,非常出名,非常强悍。所谓的框架就是一个已经被集成了各种功能(高性能异步下载,队列,分布式,解析,持久化等)的具有很强通用性的项目模板。对于框架的学习,重点是要学习其框
阅读全文
摘要:[TOC] 浏览器控制之 selenium,phantomJs谷无头浏览器 selenium 什么是selenium? 是Python的一个第三方库,对外提供的接口可以操作浏览器,然后让浏览器完成自动化的操作。 环境搭建 安装selenum:pip install selenium 获取某一款浏览器
阅读全文
摘要:[TOC] 移动端数据爬取 移动端抓包工具fiddler 什么是Fiddler Fiddler是位于客户端和服务器端的HTTP代理,也是目前最常用的http抓包工具之一 。 它能够记录客户端和服务器之间的所有 HTTP请求,可以针对特定的HTTP请求,分析请求数据、设置断点、调试web应用、修改请求
阅读全文
摘要:[TOC] 图片懒加载技术 一. 案例分析:抓取站长素材http://sc.chinaz.com/中的图片数据 !/usr/bin/env python coding:utf 8 import requests from lxml import etree if __name__ == "__mai
阅读全文

浙公网安备 33010602011771号