python之爬虫学习记录与心得
2024-08-28 12:06:06
之前在寒假的时候,学习了python基础。在慕课网上看的python入门:http://www.imooc.com/learn/177
python进阶:http://www.imooc.com/learn/317
其实好多知识都是学了忘,忘了学的。
最近因为要使用爬虫爬去数据和照片,所以现在开始学习网络爬虫。
爬虫架构:URL管理器,网页下载器,网页解析器
URL管理器:管理待抓取URL集合和已抓取URL集合 防止重复抓取。
URL管理器实现方法: 缓存数据库:大公司,性能高 内存:个人,小公司 关系数据库:永久保存URL数据或节约内存
网页下载器:将URL对应的网页以HTML下载到本地,用于后续分析 常见网页下载器:Python官方基础模块:urllib2 第三方功能包:requests
python 3.x中urllib库和urilib2库合并成了urllib库。 其中urllib2.urlopen()变成了urllib.request.urlopen() urllib2.Request()变成了urllib.request.Request()
Python的网页解析器分为两类: 1.模糊匹配—>正则表达式 2.结构化解析-> Beautiful Soup、html.parser、lxml 把整个网页作为一个DOM树来进行解析。(Document Objective Model)
新建一个pydev module。在里面输入:
import bs4
print(bs4)
右键文档 run as -> python as
运行出错。打开win+R,cmd
进入命令提示符。进入python的安装目录,cd script
pip install beautifulsoup4
进行安装。
安装成功后重新运行。
报错:
UserWarning: You provided Unicode markup but also provided a value for from_encoding. Your from_encoding will be ignored.
解决方法:
soup = BeautifulSoup(html_doc,"html.parser")
这一句中删除【from_encoding="utf-8"】
原因:
python3 缺省的编码是unicode, 再在from_encoding设置为utf8, 会被忽视掉,去掉【from_encoding="utf-8"】这一个好了
最新文章
- 第二十七篇:SOUI中控件属性查询方法
- charCode与keyCode的区别
- OrCAD Capture使用记录
- ASP.NET MVC 4 跨域
- Intent传递数据从一个Activity到另一个Activity
- 使用CSS禁止textarea调整大小功能的方法
- module_init宏解析 linux驱动的入口函数module_init的加载和释放
- Understanding AMQP, the protocol used by RabbitMQ--reference
- cf467C George and Job
- 遍历HashMap的最佳方式
- 安卓开发笔记(十九):异步消息处理机制实现更新软件UI
- NB-IoT是怎么工作的,是否支持基站定位?【转】
- PCIE错误分析
- 深入浅出 Java 中的包装类
- CF980E The Number Games
- (栈 注意格式)P1739 表达式括号匹配 洛谷
- Nginx 配置反向代理后,页面中取绝对URL地址的问题显示代理端口
- 【转】TCP三次握手和四次挥手全过程及为什么要三次握手解答
- 一个天气的微服务springcloud
- ZooKeeper系列(6):ZooKeeper机制架构
热门文章
- 搭建ftp服务器实现文件共享
- spring项目中dubbo相关的配置文件出现红叉的问题
- 使用gem安装jekyll错误记录
- css删除线,下划线等
- ASP.NET Core MVC 源码学习:MVC 启动流程详解
- CoreCLR源码探索(四) GC内存收集器的内部实现 分析篇
- webpack使用总结
- Terminating app due to uncaught exception 'NSUnknownKeyException' this class is not key value coding-compliant for the key
- linuxCentOs6前期简单且必要的设置
- C语言指针基础