1,MYSQL安装与使用相关:
https://blog.csdn.net/qq_30336433/article/details/80037989 navicat注册安装和激活(验证可行)
PyMySQL 是在 Python3.x 版本中用于连接 MySQL 服务器的一个库,Python2中则使用mysqldb。
https://www.runoob.com/python3/python3-mysql.html Python3 MySQL 数据库连接 - PyMySQL 驱动
https://www.runoob.com/python/python-mysql.html Python2 操作 MySQL 数据库
"https://www.cnblogs.com/ziyoublog/p/9722849.html">MySQL下载安装详情教程
https://www.cnblogs.com/123hqb--/p/6181732.html MySQL数据库的安装与密码配置
输入命令:cd D:\Program Files\JavaTool\MySQL\mysql-5.6.39-winx64\bin;进入mysql的bin文件夹(不管有没有配置过环境变量,也要进入bin文件夹,否则之后启动服务仍然会报错误2)
https://baijiahao.baidu.com/s?id=1624003274176404883&wfr=spider&for=pc mysql数据库导入和导出
https://blog.csdn.net/shinny195/article/details/82319218 MySQL服务无法启动,服务没有报告任何错误,请键入 NET HELPMSG 3534 以获得更多的帮助
配置文件中路径需要用\\不能使用\.我的default-storage-engine加这个配置会报错,我就删除了这个项。
注意:datadir属性后的data文件夹,一定不要自己手动创建,本人尝试手动创建会有问题,如果自己创建了可以删除掉,再执行后面的操作。
在mysql5.7以上版本中默认没有一个data目录,即没有初始化服务。需要先初始化mysql才可以启动服务,否则会报 “服务没有报告任何错误”,启动失败。
解决方法:
a 进入mysql的bin目录;
b 执行mysqld --initialize-insecure ,第一次执行的话,时间会久一些,执行结束后没有输出信息,查看bin的同级目录下会多出一个data文件夹,里面一堆文件。
https://blog.csdn.net/pdcfighting/article/details/85345540 MySQL服务正在启动或停止中,请稍候片刻后再试一次【解决方案】
2,pyspider安装与使用相关
C:\Windows\system32>pip install pyspider
ERROR: Complete output from command python setup.py egg_info:
ERROR: Please specify --curl-dir=/path/to/built/libcurl
----------------------------------------
ERROR: Command "python setup.py egg_info" failed with error code 10 in C:\Users\D\AppData\Local\Temp\pip-install-1t4tnfz6\pycurl\
https://www.cnblogs.com/lzhc/p/8343246.html python爬虫框架(2)--PySpider框架安装配置
https://blog.csdn.net/shawroad88/article/details/82222811 解决安装pyspider失败:Command "python setup.py egg_info"failed with error code 10 in....
pip3 install wheel
pip3 --version 看版本选择:
pip3 install D:\learnsofeware\python3.7\pycurl-7.43.0.3-cp37-cp37m-win32.whl
pip3 install pyspider
C:\\Program Files (x86)\\Python37-32\\lib\\site-packages\\pyspider\\__init__.py
https://blog.csdn.net/weixin_41698864/article/details/89444910 python3.7启动pyspider时报错的问题 这个不知怎么改。
依下面 的改动,替换后,我的运行就正常了。
Python 3.5中引入了async和await,它们在Python 3.7中成为关键字。
所以需要替换一下关键字。在Python37\Lib\site-packages\pyspider目录下run.py、tornado_fetcher.py、webui>app.py,ctrl+f查找async替换掉全部就可以了,可以用async1替换掉async。
原文:https://blog.csdn.net/u012424313/article/details/89511520
但提示:result_worker starting 之后再无更多内容
命令行pyspider,之后一直卡在result_worker starting...
参考:https://segmentfault.com/q/1010000007682102/a-1020000007769713(把防火墙关了,以及再开一个cmd,运行pyspider,再关掉原来那个cmd)
https://www.cnblogs.com/wisir/p/10666185.html
ValueError: Invalid configuration:
- Deprecated option 'domaincontroller': use 'http_authenticator.domain_controller' instead.
参考:https://www.cnblogs.com/wisir/p/10587938.html
把
'domaincontroller': NeedAuthController(app),
修改为:
'http_authenticator':{
'HTTPAuthenticator':NeedAuthController(app),
},
Phantomjs.exe文件,拷贝到Python安装目录就行了。
http://localhost:5000
[E 160329 11:32:22 base_handler:194] HTTP 599: SSL certificate problem: self signed certificate in certificate chain
self.crawl('http://movie.douban.com/tag/', callback=self.index_page,validate_cert=False)
于是先git下来最新的pyspider源码,把Python27\Lib\site-packages\pyspider-0.3.10.dev0-py2.7.egg目录下的pyspider整个文件夹删除,用git下的源码里的pyspider整体复制过去,重启pyspider all,再次浏览器中运行,成功!
phantomjs.exe 启动时会打开端口25555,PYSPIDER 打开两次时如果第一次的CMD窗口开着,则在然后第二次打开时后需要关掉第一个,第二个CMD才能正确打开端口。有时页面也需要刷新下,否则总有599ERROR.
3,有时图片不能加载的原因:有JS渲染:
self.crawl(each.attr.href, callback=self.detail_page, fetch_type='js')
4,爬虫工作时如返回503错误,需要模拟一个访问头部:
headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.99 Safari/537.36"}
requests.get(url,,headers = headers)