- 博客(10)
- 收藏
- 关注
原创 scrapy部署自定义文件夹导入问题
在部署scrapy得过程中,因为爬虫项目较大,为了便于维护,采用了自定义文件夹分类新建类及函数得方法结果在使用scrapyd-deploy的过程中一直提示导包错误,无法找到自定义文件夹名的包解决方法: 在自定义文件夹中创建__init__.py文件,这样打包时系统才会认为这是一个包, 如果要自己选择导入哪些文件,可时用__all__属性定义导入文件夹中的哪些文件。...
2019-08-19 11:53:27
1357
原创 python爬虫-- “-bash: gerapy: 未找到命令”
gerapy 是python分布式爬虫中常见的部署工具linux安装命令为: pip3 install gerapylinux安装后常见问题:命令行输入gerapy 提示:-bash: gerapy: 未找到命令错误原因:未建立gerapy软链接解决方法: 以centOS为例:命令行输入 ln -s /usr/local/python3/bin/gerapy /usr/b...
2019-08-14 16:51:51
835
原创 python3爬虫-遇到304的解决方式
爬取中国土地网时出现304情况304对应描述:客户端已经执行了GET,但文件未变化这是因为该网站采取了强缓存验证,服务器将要爬取的内容在本地做了缓存,再次请求的时候,会首先检查本地缓存中是否已存在,如果有就返回304解决方法:在requests headers中,禁用删除If - Modified-Since 和If-None-Natch 这两项,服务器是通过检查这两项来判断是否是已经...
2019-07-29 10:22:36
5722
原创 python3去掉字符串‘\xa0’
爬取网页信息时, 经常会遇到“ "字符串, 这是不间断空格符。我们通常所用的空格是 \x20 ,是在标准ASCII可见字符 0x20~0x7e 范围内。而 \xa0 属于 latin1 (ISO/IEC_8859-1)中的扩展字符集字符,代表空白符nbsp(non-breaking space)。latin1 字符集向下兼容 ASCII ( 0x20~0x7e )。解决方...
2019-07-29 10:14:32
1235
原创 Anaconda Prompt在开始菜单中突然消失的解决方案
最近因为配置数据分析环境,安装了一些包,然后就悲催的发现Anaconda Prompt突然没了。网上查询方法如下:解决方法一: 到Anaconda的安装目录,输入 python .\Lib\_nsis.py mkmenus解决方法二: cmd命令行输入conda install console_shortcut方法一无效,方法二亲...
2019-07-10 14:19:59
2365
1
原创 python3 编解码常见操作(codecs, url编解码, soup实例化报错)
codecs是encoders和decoders的缩写。codecs模块为我们解决的字符编码的处理提供了lookup方法,它接受一个字符编码名称的参数,并返回指定字符编码对应的codecs.CodecInfo 对象,该对象包含了 encoder、decoder、StreamReader和StreamWriter的函数对象和类对象的引用。为了简化对lookup方法的调用, codecs还提供了get...
2018-06-28 17:08:07
1998
原创 python爬虫使用POST登录时的注意事项
Requests提供了一个Session的概念,在连续访问网页时能自动处理Cookie的方式,程序会自动把Cookie的值带上,像浏览器一样,不用关注具体细节。用法示例如下:import reqestslonginUrl = 'http://www.xxxxx.com/login's = requests.Session()# 首先访问登录界面,作为游客,服务器会先分配一个cookier = s....
2018-06-27 17:15:37
2768
原创 简单分布式爬虫-windows环境
创建服务进程1.建立队列Queue,用来进行进程间通信2.把第一步建立的队列在网络上注册,暴露给其他进程(主机),注册后获得网络队列,相当于本地队列的映像3.建立一个对象(Queuemanager(BaseManager))实例manager,绑定端口和验证口令4.启动第三步中建立的实例,即启动管理manager, 监管信息通道5. 通过管理实例的方法获得通过网络访问的Queue 对象,即再把网络...
2018-06-26 18:23:14
556
原创 python3.6 运行monkey.patch_all()报错问题
在最新的python3.6中使用协程,启用gevent时,可能会出现警告,代码如下:import geventfrom gevent import monkeymonkey.patch_all()# monkey.patch_socket()# monkey.patch_ssl()import urllib.requestdef run_task(url): print("...
2018-06-26 16:23:16
8415
2
原创 列表内字典根据元素去重
from collections import OrderedDict# 已有列表a,根据字典内的name进行去重操作a = [{'name':'lilei','age':'18'},{'name':'tom','age':'16'},{'name':'lilei','age':'20'}]b = OrderedDict()for item in a: b.setdefault(item[...
2018-06-22 17:04:54
3144
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人