彭世瑜的博客

记录我的code历程 个人主页:www.pengshiyu.com

Scrapyd API 中文翻译版本

原文地址:https://scrapyd.readthedocs.io/en/stable/api.html 以下是 Scrapyd 提供的 JSON API. 实现了对Scrapy 项目管理 # 服务器查询 daemonstatus.json 服务器状态 # 项目操作 addversion.j...

2018-11-16 12:41:26

阅读数:70

评论数:0

Python爬虫:Scrapy与__file__引发的异常

报错问题 项目代码中使用了__file__, 项目部署之后,想部署单个爬虫,读取spider-list出错 查看 https://pypi.org/project/scrapyd-client/#id5 作者说,要尽量避免使用__file__ 删除之后确实正常了。。。 ...

2018-11-14 19:02:36

阅读数:28

评论数:0

Python爬虫:Scrapy的Crawler对象及扩展Extensions和信号Signals

先了解Scrapy中的Crawler对象体系 Crawler对象 settings crawler的配置管理器 set(name, value, priority=‘project’) setdict(values, priority=‘project’) setmodule(module...

2018-11-13 10:33:00

阅读数:63

评论数:0

Python爬虫:Scrapy中间件Middleware和Pipeline

Scrapy提供了可自定义2种中间件,1个数据处理器 名称 作用 用户设置 数据收集器(Item-Pipeline) 处理item 覆盖 下载中间件(Downloader-Middleware) 处理request/response 合并 爬虫中间件(Spider-Mid...

2018-11-12 18:02:16

阅读数:88

评论数:0

Python爬虫:Scrapy的get请求和post请求

scrapy 请求继承体系 Request |-- FormRequest get请求 from scrapy import Spider, Request, cmdline class SpiderRequest(Spider): name = &quo...

2018-11-08 12:09:19

阅读数:72

评论数:0

Python爬虫:Scrapy调试运行单个爬虫

一般运行Scrapy项目的爬虫是在命令行输入指令运行的: $ scrapy crawl spider 每次都输入还是比较麻烦的,偶尔还会敲错,毕竟能少动就少动 Scrapy提供了一个命令行工具,可以在单个spider文件中加入以下代码: from scrapy import Spider, c...

2018-11-08 10:59:20

阅读数:29

评论数:0

Python爬虫:scrapy辅助功能实用函数

scrapy辅助功能实用函数: get_response: 获得scrapy.HtmlResponse对象, 在不新建scrapy项目工程的情况下,使用scrapy的一些函数做测试 extract_links: 解析出所有符合条件的链接 代码示例 以拉勾首页为例,获取拉勾首页所有职位链...

2018-09-29 16:09:05

阅读数:70

评论数:0

XPathHelper使用

使用步骤: 1)用chrome打开一个网页 2)按Ctrl-Shift键-X以打开XPath辅助控制台。 3)按住Shift键鼠标在页面上的元素。查询框会不断更新,以显示鼠标指针下面的元素充分XPath查询。结果框其右侧将显示评价结果的查询。 4)如果需要的话,可以直接在控制台编辑XPath查询。...

2018-09-18 17:29:17

阅读数:151

评论数:0

Python爬虫:scrapy-splash的请求头和代理参数设置

lua中设置代理和请求头: function main(splash, args) -- 设置代理 splash:on_request(function(request) request:set_proxy{ h...

2018-08-28 17:13:17

阅读数:872

评论数:5

error: scrapy TypeError: 'float' object is not iterable

正常运行爬虫,在公司电脑上没问题,回到家自己电脑上就出现了下面的报错,百思不得解 Traceback (most recent call last): File "D:\.virtualenvs\spider\lib\site-packages\twisted\intern...

2018-08-26 11:27:25

阅读数:95

评论数:0

Python爬虫:python2使用scrapy输出unicode乱码

无力吐槽的python2,对中文太不友好了,不过在早期项目中还是需要用到 没办法,还是需要解决 我编写scrapy爬虫的一般思路: 创建spider文件和类 编写parse解析函数,抓取测试,将有用信息输出到控制台 在数据库中创建数据表 编写item 编写model 编写pipline 运...

2018-08-24 15:54:47

阅读数:177

评论数:0

Python爬虫:scrapy利用splash爬取动态网页

依赖库: pip install scrapy-splash 配置settings.py # splash服务器地址 SPLASH_URL = 'http://localhost:8050' # 支持cache_args(可选) SPIDER_MIDDLEWARES = { 'sc...

2018-08-13 10:44:46

阅读数:264

评论数:0

Python爬虫:scrapy定时运行的脚本

原理: 1个进程 -> 多个子进程 -> scrapy进程 代码示例 将以下代码文件放入scrapy项目中任意位置即可 # -*- coding: utf-8 -*- # @File : run_spider.py # @Date ...

2018-08-08 20:02:01

阅读数:323

评论数:0

Python爬虫:scrapy爬虫设置随机访问时间间隔

scrapy中有一个参数:DOWNLOAD_DELAY 或者 download_delay 可以设置下载延时,不过Spider类被初始化的时候就固定了,爬虫运行过程中没发改变,随机延时,可以降低被封ip的风险 代码示例 random_delay_middleware.py # -*- c...

2018-08-08 17:50:40

阅读数:1511

评论数:0

Python爬虫:scrapy管理服务器返回的cookie

1、使用cookie settings.py启用 COOKIES_ENABLED=True # 启用cookie COOKIES_DEBUG=True # 显示发送和接受的cookie 2、使用自定义cookie 如果要使用登录验证的cookie,那么可以这样 for url in ...

2018-07-24 15:01:04

阅读数:136

评论数:0

Python爬虫:scrapy中间件及一些参数

scrapy中间件 from scrapy.settings import default_settings 'scrapy.downloadermiddlewares.robotstxt.RobotsTxtMiddleware': 100, 'scrapy.downloadermiddle...

2018-07-22 22:39:25

阅读数:160

评论数:0

Python爬虫:scrapy框架请求参数meta、headers、cookies一探究竟

对于scrapy请参数,会经常用到,不过没有深究 今天我就来探索下scrapy请求时所携带的3个重要参数headers, cookies, meta 原生参数 首先新建myscrapy项目,新建my_spider爬虫 通过访问:http://httpbin.org/get 来测试请求参数 ...

2018-07-22 21:47:36

阅读数:1302

评论数:0

Python爬虫:scrapy直接运行爬虫

一般教程中教大在命令行运行爬虫: # 方式一 $ scrapy crawl spider_name 这样,每次都要切换到命令行,虽然可以按向上键得到上次运行的指令,不过至少还要敲一次运行命令 还有一种方式是单独配置一个文件,spider_name是具体爬虫名称,通过pycharm运行设置,...

2018-07-12 19:41:01

阅读数:655

评论数:0

Python爬虫:scrapy查看Cookie值

#请求Cookie Cookie = response.request.headers.getlist('Cookie') #响应Cookie Cookie = response.headers.getlist('Set-Cookie') 参考: [Scrapy]模拟登陆并获取Co...

2018-07-12 17:03:04

阅读数:276

评论数:0

Python爬虫:scrapy防止爬虫被禁的策略

爬虫策略: 1、动态User-Agent(随机切换User-Agent,模拟不同用户的浏览器信息),使用中间件 class RandomUserAgentMiddleware(object): def process_request(self, request, spider): ...

2018-06-22 18:20:37

阅读数:303

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭