静觅小白爬虫及进阶系列学习笔记
小白爬虫第一弹之抓取妹子图
遇到问题:python2.x和python3.x有区别。
1. 编码问题,报错ASCII时要在前面加上
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
,路径中有中文字符需要把str类型的转为Unicode类型,使用.decode(‘utf-8’)
2. Print问题,python2.x版本的print没有括号,想要带括号需在所有import之前加上from __future__ import print_function
。
注:未按要求使用Anaconda,因为用pip也能下载安装。
小白爬虫第二弹之健壮的小爬虫
小白爬虫第三弹之去重去重
安装MongoDB到C盘。
运行发现代理不好使,保存到mongoDB后不知道怎么查看。
小白爬虫第四弹之爬虫快跑(多进程+多线程)
注意:需要先运行第二个代码块即我自己的start queue.py,把地址写进MongoDB,然后再运行多线程+多进程代码即multithreading.py,才能不一直显示“队列没有数据”。
另,MogoQueue.py的pop_title()
函数内,需把return record['主题']
改为return record['主题'.decode('utf-8')]
才能不报错:KeyError。因为python2.7的编码问题,record['主题']
的“主题”两字应转换成utf-8类型。
小白进阶之Scrapy第一篇
遇到问题:ImportError: No module named items
解决:http://stackoverflow.com/questions/10570635/scrapy-importerror-no-module-named-items
个人使用了from __future__ import absolute_import
这种方法。
安装一个python操作mysql的包mysql-connector-python-2.1.4
更改sql.py中的sql类的语句为
sql = 'INSERT INTO dd_name (xs_name,xs_author,category,name_id) VALUES (%(xs_name)s,%(xs_author)s,%(category)s,%(name_id)s)'
报错:ProgrammingError: 1045 (28000): Access denied for user ‘ROOT’@’localhost’ (using password: YES)
数据库操作:
用管理员身份打开Cmd
net start mysql
E:
Cd E:\mysql5.7\bin
mysql -hlocalhost -uroot -p123456
show databases;
use test
DROP TABLE IF EXISTS `dd_name`;
CREATE TABLE `dd_name` (`id` int(11) NOT NULL AUTO_INCREMENT,`xs_name` varchar(255) DEFAULT NULL,`xs_author` varchar(255) DEFAULT NULL,`category` varchar(255) DEFAULT NULL,`name_id` varchar(255) DEFAULT NULL,PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=38 DEFAULT CHARSET=utf8mb4;
show tables;
注意分号!!!
第二部分的sql语句:
DROP TABLE IF EXISTS `dd_chaptername`;
CREATE TABLE `dd_chaptername` (`id` int(11) NOT NULL AUTO_INCREMENT,`xs_chaptername` varchar(255) DEFAULT NULL,`xs_content` text,`id_name` int(11) DEFAULT NULL,`num_id` int(11) DEFAULT NULL,`url` varchar(255) DEFAULT NULL,PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=2726 DEFAULT CHARSET=gb18030;
SET FOREIGN_KEY_CHECKS=1;
报错:UnicodeEncodeError: ‘ascii’ codec can’t encode characters in position 1-2: ordinal not in range(128)
在前面加上
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
报错:UnicodeDecodeError: ‘utf8’ codec can’t decode bytes in position 0-1: invalid continuation byte,尝试多种方法无果后,把所有的str(…)的字符串都用unicode(str(response.meta['chaptername']).replace('\xa0', ''), errors='ignore')
这种形式替换了。
如:
注意:原本的域名23wx.com改为了23us.com
小白进阶之Scrapy第二篇(登录篇)
没有vip卡号所以登不进去。。。
小白进阶之Scrapy第三篇(基于Scrapy-Redis的分布式以及cookies池)
注:刚发现还有一篇scrapy分布式的前篇没有看,但因为跟项目和毕设相关度不大所以以后再看吧。谢谢崔庆才老师,您的博客对我帮助太大了。
静觅小白爬虫及进阶系列学习笔记相关推荐
- 小白爬虫第一弹之抓取妹子图
点击上方"程序员大咖",选择"置顶公众号" 关键时刻,第一时间送达! 这是一篇完全给新手写的爬虫教程 由于经常在群里装逼加上群主懒啊(你看有多久没更新文章就知道 ...
- opencv进阶学习笔记2:numpy操作图像,色彩空间,查找指定颜色范围,通道分离与合并
基础部分传送门 python3+opencv学习笔记汇总目录(适合基础入门学习) 进阶版笔记目录: python+opencv进阶版学习笔记目录(适合有一定基础) Numpy操作图像 1.遍历图像每一 ...
- 状态机系列学习笔记01
状态机系列学习笔记01 有限状态机(FSM)概念 定义 总的来说,有限状态机系统,是指在不同阶段会呈现出不同的运行状态的系统,这些状态是有限的.不重叠的.这样的系统在某一时刻一定会处于其所有状态中的一 ...
- Python爬虫:Xpath语法笔记
Python爬虫:Xpath语法笔记 一.选取节点 常用的路劲表达式: 表达式 描述 实例 nodename 选取nodename节点的所有子节点 xpath('//div') 选取了div节点的 ...
- opencv进阶学习笔记14:分水岭算法 实现图像分割
基础版学习笔记目录: python3+opencv学习笔记汇总目录(适合基础入门学习) 进阶版笔记目录链接: python+opencv进阶版学习笔记目录(适合有一定基础) 分水岭算法原理 分水岭算法 ...
- opencv进阶学习笔记13:图像形态学操作大全(膨胀,腐蚀,开闭,黑帽,顶帽,梯度)python版
基础版学习笔记: python3+opencv学习笔记汇总目录(适合基础入门学习) 进阶版笔记目录链接: python+opencv进阶版学习笔记目录(适合有一定基础) 基础版形态学: opencv学 ...
- opencv进阶学习笔记12:轮廓发现和对象测量
基础版笔记目录: python3+opencv学习笔记汇总目录(适合基础入门学习) 进阶版笔记目录链接: python+opencv进阶版学习笔记目录(适合有一定基础) 轮廓发现 1轮廓发现介绍 基础 ...
- opencv进阶学习笔记11:cannny边缘检测,直线检测,圆检测
基础版笔记传送门 python3+opencv学习笔记汇总目录(适合基础入门学习) 进阶版笔记目录链接: python+opencv进阶版学习笔记目录(适合有一定基础) cannny边缘检测 基础版边 ...
- opencv进阶学习笔记10:图像金字塔和图像梯度
基础版笔记传送门: python3+opencv学习笔记汇总目录(适合基础入门学习) 进阶版笔记目录链接: python+opencv进阶版学习笔记目录(适合有一定基础) 图像金字塔 变小 变大 原理 ...
最新文章
- Python开发【第十篇】:CSS (二)
- 小程序开发需要注意什么
- IOS 图片上传处理 图片压缩 图片处理
- mybatis-批量操作
- 使用 SVG 动画实现弹性的页面元素效果
- LeetCode 2100. 适合种地的日子(计数)
- PSPNet网络要点
- Go语言栈定义及相关方法实现
- 什么样的人适合微信创业
- python手机桌面开发_将Android手机打造成你的Python开发者桌面#华为云·寻找黑马程序员#...
- 农村包围城市:企业网站关键词排名上首页
- element修改图标的大小
- 浅谈springboot
- CRM客户关系管理分析模型——RFM模型
- github下载release连接失败解决方法 亲测有效
- 班级网站java,ssm班级网站
- 笛卡尔空间力反馈的关节速度控制之机器人运动学库KDL安装及使用
- Javascript 报错 Uncaught TypeError: x is not a function 常见错误总结
- Excel如何将工作表按照表内某一单元格命名
- 蔡崇信:一个拯救阿里巴巴的男人