文章分类 -  爬虫

摘要:1、遍历多个节点 查找.items() for item in 节点.items(): yield item.attr('href') 2、子查询 find() 阅读全文
posted @ 2019-11-24 19:50 市丸银 阅读(69) 评论(0) 推荐(0) 编辑
摘要:总结 开启浏览器 访问页面 查找节点 节点交互 click() send_keys() clear() 执行JS excute_script() 获取节点信息 属性 内容 其它 延时等待 隐式等待 implicitly 显示等待 前进和后退 Cookies 阅读全文
posted @ 2019-11-20 13:47 市丸银 阅读(65) 评论(0) 推荐(0) 编辑
摘要:中间件 import random import redis from scrapy.exceptions import NotConfigured from twisted.internet.error import ConnectError, TimeoutError class RandomP 阅读全文
posted @ 2019-11-16 00:21 市丸银 阅读(533) 评论(0) 推荐(0) 编辑
摘要:一、调试 scrapy view url 下载url # console端,输入下面命令 scrapy shell url # 进入python交互模式,查看打印的结果是否符合预期 response.xpath('') 我一般用于检测xpath是否正确 二、查看cookies debug COOKI 阅读全文
posted @ 2019-11-15 14:55 市丸银 阅读(862) 评论(0) 推荐(0) 编辑
摘要:一、去重 # 去重 DUPEFILTER_CLASS = 'scrapy_redis.dupefilter.RFPDupeFilter' # 连接redis REDIS_URL = 'redis://user:密码@ip:端口' # 注意:无用户密码时,不用加@符号 # 爬虫停止时,redis中的数 阅读全文
posted @ 2019-11-15 10:01 市丸银 阅读(77) 评论(0) 推荐(0) 编辑
摘要:1、debug调式,settings文件 COOKIES_ENABLED = True COOKIES_DEBUG = True 2、合并cookies request.meta['dont_merge_cookies'] = True 阅读全文
posted @ 2019-11-15 00:04 市丸银 阅读(79) 评论(0) 推荐(0) 编辑
摘要:情况1 问: 不登录可以翻页爬取,但只能爬取前几页 答:涉及到cookies验证,如果是auth认证的话,一页都不能爬取 情况2 问:爬取很多页后,显示系统繁忙 答:这是虚假的,开启cookies debug,找到请求直接的不同点(改点应该就是问题所在),大多数情况是sessid COOKIES_E 阅读全文
posted @ 2019-11-14 17:17 市丸银 阅读(124) 评论(0) 推荐(0) 编辑
摘要:遇到的情况 1、href或src中没有url,需要自己观察不同url的区别,并找出规律 2、href或src有值,但xpath取不到值,需要借助XHR(ajax请求),观察请求的ur的不同并找出规律 阅读全文
posted @ 2019-11-13 09:21 市丸银 阅读(110) 评论(0) 推荐(0) 编辑
摘要:一、Request 查看源码的方式:scrapy -> http-> request -> __init__.py 1、meta 作用:用于parse方法之间进行传递值,Request() -> response.meta['内容'] 注意:先判断response.meta里是否有值,如代理池 二、 阅读全文
posted @ 2019-11-12 16:47 市丸银 编辑
摘要:注意:插件在配置文件中,后面的数值不是很重要,除非某些插件是依赖与某些插件的时候 一、主要作用:信号量 1、方法 import logging from scrapy import signals from scrapy.exceptions import NotConfigured logger 阅读全文
posted @ 2019-11-12 00:10 市丸银 编辑
摘要:1、并发数 CONCURRENT_REQUESTS = 32 并发数,即下载器的个数,默认16 2、缓存 HTTPCACHE_ENABLED = True 启动HTTP请求缓存,下次再遇到该url时,不再需要请求远程网站 3、启用cookie,debug cookie COOKIES_ENABLED 阅读全文
posted @ 2019-11-09 23:43 市丸银 编辑
摘要:1、核心:下载中间件 2、过程: 创建代理中间件,在配置文件中添加代理池的ip列表 修改下载中间件的内容,注意:自定义代理中间件优先级要高于默认的httpproxy中间件间 3、创建ip代理值中间件类 import random from collections import defaultdict 阅读全文
posted @ 2019-11-08 23:56 市丸银 阅读(136) 评论(0) 推荐(0) 编辑
摘要:1、自己理解: meta = {'k1': 'v1'} 传递数据,通过Request()设置meta,通过response.meta.get('k1'),获取meta的值 通过callback=解析函数名,进行 2、参考 https://blog.csdn.net/wumxiaozhu/articl 阅读全文
posted @ 2019-11-08 23:51 市丸银 阅读(645) 评论(0) 推荐(0) 编辑
摘要:注意:中间件在配置文件中,后面的数值很重要 一、下载中间件 注意:from_crawler 要返回 cls() 对象或抛出异常,cls() -> __init__方法 1、process_reuqest 何时执行: request ->(下载中间件) 下载器 返回值 None: 继续执行后面中间件的 阅读全文
posted @ 2019-11-08 13:18 市丸银 编辑
摘要:官网:https://docs.scrapy.org/en/latest/ a、pipeline的四个作用 官方 1、持久化 2、去重 3、清理HTML数据 4、验证爬取的数据,检测爬取的字段我的认知 持久化、去重、数据清洗(取空格,换行符,引号等) b、流程 1、yield item 2、proc 阅读全文
posted @ 2019-11-08 08:14 市丸银 编辑
摘要:注意:lxml要和xpath一起使用,这里的xpath获取的结果是列表,不能使用extract_first()和extract()方法 一、lxml(解析库) 1、优点:速度快,用于爬取大型网站 2、安装:https://www.cnblogs.com/wt7018/p/11773612.html 阅读全文
posted @ 2019-11-05 23:25 市丸银 阅读(130) 评论(0) 推荐(0) 编辑
摘要:官网:https://www.crummy.com/software/BeautifulSoup/bs4/doc/ 参鸟教程:http://www.jsphp.net/python/show-24-214-1.html 自己写的日记:https://i-beta.cnblogs.com/diarie 阅读全文
posted @ 2019-11-05 21:59 市丸银 阅读(88) 评论(0) 推荐(0) 编辑
摘要:官网: https://requests.kennethreitz.org//zh_CN/latest/user/quickstart.html 测试网站:httpbin.org 注意:重定向 requests.get(allow_redirects=False) 注意:其它看官网 1、带heade 阅读全文
posted @ 2019-11-05 20:37 市丸银 编辑

点击右上角即可分享
微信分享提示