python构建基础的爬虫教学


Posted in Python onDecember 23, 2018

爬虫具有域名切换、信息收集以及信息存储功能。

这里讲述如何构建基础的爬虫架构。

1、

urllib库:包含从网络请求数据、处理cookie、改变请求头和用户处理元数据的函数。是python标准库.urlopen用于打开读取一个从网络获取的远程对象。能轻松读取HTML文件、图像文件及其他文件流。

2、
beautifulsoup库:通过定位HTML标签格式化和组织复杂的网络信息,用python对象展现XML结构信息。不是标准库,可用pip安装。常用的对象是BeautifulSoup对象。

1、基础爬虫

爬虫需要首先import对象,然后打开网址,使用BeautifulSoup对网页内容进行读取。

python构建基础的爬虫教学

2、使用print输出打开的网址的内容。

python构建基础的爬虫教学

3、从输出中可以看出内容的结构为:

python构建基础的爬虫教学

4、输出内容中的html-body-h1的内容可使用四种语句。

python构建基础的爬虫教学

python构建基础的爬虫教学

5、

BeautifulSoup可提取HTML、XML文件的任意节点的信息,只需要目标信息旁边或附近有标记。

1、Error

在运行代码时,经常会出现错误,看懂错误出现的原因才能解决存在的问题。

2、

在html=urlopen('')中会发生两种错误:网页在服务器上不存在或服务器不存在

3、网页在服务器上不存在会出现HTTPError,可使用try语句进行处理。

当程序返回HTTPError错误代码时,会显示错误内容。

python构建基础的爬虫教学

4、服务器不存在时,urlopen会返回None.

可使用判断语句进行检测。

调用的标签不存在会出现None,调用不存在的标签下的子标签,就会出现AttributeError错误。

python构建基础的爬虫教学

总结:以上就是关于python构建基础的爬虫的基础步骤内容,感谢大家的阅读和对三水点靠木的支持。

Python 相关文章推荐
python网络编程学习笔记(10):webpy框架
Jun 09 Python
python处理html转义字符的方法详解
Jul 01 Python
独特的python循环语句
Nov 20 Python
pycharm使用matplotlib.pyplot不显示图形的解决方法
Oct 28 Python
python单线程文件传输的实例(C/S)
Feb 13 Python
使用Matplotlib 绘制精美的数学图形例子
Dec 13 Python
new_zeros() pytorch版本的转换方式
Feb 18 Python
matlab灰度图像调整及imadjust函数的用法详解
Feb 27 Python
python 通过pip freeze、dowload打离线包及自动安装的过程详解(适用于保密的离线环境
Dec 14 Python
细说NumPy数组的四种乘法的使用
Dec 18 Python
Python 实现一个简单的web服务器
Jan 03 Python
Pytorch模型迁移和迁移学习,导入部分模型参数的操作
Mar 03 Python
Flask之请求钩子的实现
Dec 23 #Python
python爬虫获取新浪新闻教学
Dec 23 #Python
Python爬虫文件下载图文教程
Dec 23 #Python
python爬虫获取百度首页内容教学
Dec 23 #Python
Python爬虫设置代理IP(图文)
Dec 23 #Python
celery4+django2定时任务的实现代码
Dec 23 #Python
python3使用pandas获取股票数据的方法
Dec 22 #Python
You might like
ThinkPHP3.0略缩图不能保存到子目录的解决方法
2012/09/30 PHP
PHP高级编程实例:编写守护进程
2014/09/02 PHP
php 利用socket发送HTTP请求(GET,POST)
2015/08/24 PHP
php微信开发之带参数二维码的使用
2016/08/03 PHP
利用PHP抓取百度阅读的方法示例
2016/12/18 PHP
ThinkPHP 3.2.2实现事务操作的方法
2017/05/05 PHP
PHP类的自动加载机制实现方法分析
2019/01/10 PHP
通过实例解析PHP数据类型转换方法
2020/07/11 PHP
jquery.blockUI.js上传滚动等待效果实现思路及代码
2013/03/18 Javascript
Node.js实现简单聊天服务器
2014/06/20 Javascript
jQuery实现转动随机数抽奖效果的方法
2015/05/21 Javascript
JavaScript探测CSS动画是否已经完成的方法
2016/08/30 Javascript
Vue.js每天必学之数据双向绑定
2016/09/05 Javascript
3种不同的ContextMenu右键菜单实现代码
2016/11/03 Javascript
AngularJS服务service用法总结
2016/12/13 Javascript
Angular2使用Angular-CLI快速搭建工程(二)
2017/05/21 Javascript
基于 webpack2 实现的多入口项目脚手架详解
2017/06/26 Javascript
Promise.all中对于reject的处理方法
2018/08/01 Javascript
使用jquery Ajax实现上传附件功能
2018/10/23 jQuery
vue项目中使用Svg的方法
2018/10/24 Javascript
jQuery事件blur()方法的使用实例讲解
2019/03/30 jQuery
vue prop属性传值与传引用示例
2019/11/13 Javascript
[56:48]FNATIC vs EG 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/16 DOTA
python的tkinter布局之简单的聊天窗口实现方法
2014/09/03 Python
python中通过预先编译正则表达式提高效率
2017/09/25 Python
用Python写一段用户登录的程序代码
2018/04/22 Python
django的auth认证,authenticate和装饰器功能详解
2019/07/25 Python
Python字典生成式、集合生成式、生成器用法实例分析
2020/01/07 Python
JAVA招聘远程笔试题
2015/07/23 面试题
招聘单位介绍信
2014/01/14 职场文书
花店创业计划书范文
2014/02/07 职场文书
纪念一二九运动演讲稿
2014/09/16 职场文书
公司给客户的感谢信
2015/01/23 职场文书
婚礼伴郎致辞
2015/07/28 职场文书
用python自动生成日历
2021/04/24 Python
vue3使用vue-router的完整步骤记录
2021/06/20 Vue.js