Scrapy
文章平均质量分 54
scrapy知识点
野生猕猴桃
制怒慎思,明辨笃行。
展开
-
scrapy_redis配置redis集群
单节点的redis太容易挂了,总是出现意外情况,借助scrapy-redis-sentinel库实现scrapy_redis对redis集群的使用按照官方库的说明去修改后启动项目会报错,报错的原因其实是作者的源码包中一个叫queue.py的文件中PriorityQueue类有一些逻辑上的问题1、首先安装库pip3 install scrapy-redis-sentinel2、安装后修改queue.py源码pip3 show scrapy-redis-sentinel #查看源码包路径原创 2021-09-29 11:24:54 · 598 阅读 · 0 评论 -
scrapy-redis从redis到kafka生产消费
redis到kafka生产者# -*- coding: utf-8 -*-import timeimport jsonimport randomimport htmlminfrom lxml import etreefrom datetime import datetimefrom redis import StrictRedisfrom kafka import KafkaProducerfrom multiprocessing import Processredis_host =原创 2020-09-18 09:55:17 · 542 阅读 · 0 评论 -
scrapyd界面中文显示乱码问题优化
scrapyd界面中文字符显示时诸如下面图片这样显示乱码不利于我们查看日志且没有很好的可读性,下面我来优化下scrapyd对中文字符显示我的scrapyd部署环境是基于docker容器的,所以我展示的优化环境是基于linux下的(1)首先我们要通过命令查看一下我们scrapyd包的安装位置,我们包的位置就是图中Location显示路径pip3 show scrapyd(2)接下来我们进入该路径下寻找我们要改的scrapyd的配置文件,进入目录后我们要修改的文件就是website.py了cd原创 2020-10-29 17:40:48 · 798 阅读 · 0 评论 -
scrapy覆写setting
众所周知scrapy框架配置项我们都写在setting文件中,那么我们不同spider中想使用不同的setting配置该怎么办呢?这时候就需要一个方法custom_settings实现即可,我们只需在需要覆写的spider文件采集类下声明一个custom_settings ,下面例子我覆写了headers、pielines、middlewares,如下所示: custom_settings = { 'DEFAULT_REQUEST_HEADERS': { 'U原创 2020-10-14 15:54:02 · 227 阅读 · 0 评论 -
scrapy-redis处理redis中数据到mysql、mongodb、elasticsearch
1 redis-mysql# -*- coding: utf-8 -*-import redis, json, timefrom pymysql import connectredis_client = redis.StrictRedis(host="127.0.0.1", port=6379, db=0) # redis数据库链接mysql_client = connect(host="127.0.0.1", user="root", password="root",database="t原创 2019-02-20 22:38:47 · 844 阅读 · 0 评论 -
scrapy对接selenium实现异步加载
在写scrapy时,可能会遇到如下情况,有的页面是动态加载的页面这样我们可能就很不好去处理导致数据是拿不全的,这个时候我们就可以在自定义一个selenium中间件,当我们去请求这个页面的时候去加载并返回加载完的响应体回来去解析,中间件具体编写如下:# -*- coding: utf-8 -*-import scrapyfrom selenium import webdriverfrom selenium.webdriver.support.wait import WebDriverWaitfrom原创 2019-10-25 15:42:53 · 939 阅读 · 0 评论 -
分布式爬虫部署scrapyd对接docker
操作系统建议选择在linux系统下,windows下docker的安装和scrapyd等等一些配置相对麻烦,怎么安装docker和scrapyd及scrapyd-client就不细说了.新建一个空目录,首先在新目录中创建文件scrapyd.conf,并粘贴如下配置,目的是在docker中开启scrapyd远程访问权限[scrapyd]eggs_dir = eggslogs_dir ...原创 2019-08-07 14:41:24 · 903 阅读 · 4 评论 -
scrapy的settings
详情参考官方文档 scrapy# -*- coding: utf-8 -*-# Scrapy settings for Agarth project## For simplicity, this file contains only settings considered important or# commonly used. You can find more settings consulting the documentation:## https://doc.scrapy.原创 2018-11-20 15:29:38 · 1068 阅读 · 0 评论