python爬虫基本知识


Posted in Python onMarch 05, 2018

爬虫简介

      根据百度百科定义:网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。另外一些不常使用的名字还有蚂蚁、自动索引、模拟程序或者蠕虫。     

随着大数据的不断发展,爬虫这个技术慢慢走入人们的视野,可以说爬虫是大数据应运而生的产物,至少我解除了大数据才了解到爬虫这一技术

随着数据的海量增长,我们需要在互联网上选取所需要的数据进行自己研究的分析和实验。这就用到了爬虫这一技术,下面就跟着小编一起初遇python爬虫!

一、请求-响应

在利用python语言实现爬虫时,主要用到了urllib和urllib2两个库。首先用一段代码说明如下:

import urllib
 import urllib2
 url="http://www.baidu.com"
 request=urllib2.Request(url)
 response=urllib2.urlopen(request)
 print response.read()

我们知道一个网页就是以html为骨架,js为肌肉,css为衣服所构成的。上述代码所实现的功能就是把百度网页的源码爬取到本地。

其中,url为要爬取的网页的网址;request发出请求,response是接受请求后给出的响应。最后用read()函数输出的就是百度网页的源码。

二、GET-POST

两者都是向网页传递数据,最重要的区别是GET方式是直接以链接形式访问,链接中包含了所有的参数,当然如果包含了密码的话是一种不安全的选择,不过你可以直观地看到自己提交了什么内容。

POST则不会在网址上显示所有的参数,不过如果你想直接查看提交了什么就不太方便了,大家可以酌情选择。

POST方式:

import urllib
 import urllib2
 values={'username':'2680559065@qq.com','Password':'XXXX'}
 data=urllib.urlencode(values)
 url='https://passport.csdn.net/account/login?from=http://my.csdn.net/my/mycsdn'
 request=urllib2.Request(url,data)
 response=urllib2.urlopen(request)
 print response.read()

GET方式:

import urllib
import urllib2
values={'username':'2680559065@qq.com','Password':'XXXX'}
data=urllib.urlencode(values)
url = "http://passport.csdn.net/account/login"
geturl = url + "?"+data
request=urllib2.Request(geturl)
response=urllib2.urlopen(request)
print response.read()

三、异常处理

处理异常时,用到了try-except语句。

import urllib2
 try:
   response=urllib2.urlopen("http://www.xxx.com")
 except urllib2.URLError,e:
   print e.reason

总结

以上所述是小编给大家介绍的python爬虫基本知识,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
python解析xml模块封装代码
Feb 07 Python
使用python分析git log日志示例
Feb 27 Python
python计算圆周长、面积、球体体积并画出圆
Apr 08 Python
【Python】Python的urllib模块、urllib2模块批量进行网页下载文件
Nov 19 Python
Ubuntu 下 vim 搭建python 环境 配置
Jun 12 Python
在windows下Python打印彩色字体的方法
May 15 Python
python中ASCII码字符与int之间的转换方法
Jul 09 Python
pygame游戏之旅 如何制作游戏障碍
Nov 20 Python
PyQt5实现简易计算器
May 30 Python
详解Python 定时框架 Apscheduler原理及安装过程
Jun 14 Python
爬虫代理的cookie如何生成运行
Sep 22 Python
Django显示可视化图表的实践
May 10 Python
用tensorflow构建线性回归模型的示例代码
Mar 05 #Python
详解python实现线程安全的单例模式
Mar 05 #Python
分析python动态规划的递归、非递归实现
Mar 04 #Python
python3.x上post发送json数据
Mar 04 #Python
python数据封装json格式数据
Mar 04 #Python
Python爬虫实例扒取2345天气预报
Mar 04 #Python
Python爬虫设置代理IP的方法(爬虫技巧)
Mar 04 #Python
You might like
PHP register_shutdown_function()函数的使用示例
2015/06/23 PHP
使用PHP实现生成HTML静态页面
2015/11/18 PHP
php-fpm添加service服务的例子
2018/04/27 PHP
Javascript 函数对象的多重身份
2009/06/28 Javascript
jquery批量设置属性readonly和disabled的方法
2014/01/24 Javascript
解决JavaScript数字精度丢失问题的方法
2015/12/03 Javascript
JavaScript中Textarea滚动条不能拖动的解决方法
2015/12/15 Javascript
JS通过Cookie判断页面是否为首次打开
2016/02/05 Javascript
Bootstrap3学习笔记(三)之表格
2016/05/20 Javascript
angularjs封装bootstrap时间插件datetimepicker
2016/06/20 Javascript
老生常谈JavaScript 正则表达式语法
2016/08/20 Javascript
微信小程序-图片、录音、音频播放、音乐播放、视频、文件代码实例
2016/11/22 Javascript
angular4模块中给标签添加背景图的实现方法
2017/09/15 Javascript
JS中的JSON对象的定义和取值实现代码
2018/05/09 Javascript
Vue开发实现吸顶效果的示例代码
2018/08/21 Javascript
angular ng-model 无法获取值的处理方法
2018/10/02 Javascript
使用js实现单链解决前端队列问题的方法
2020/02/03 Javascript
[51:14]LGD vs VP 2018国际邀请赛淘汰赛BO3 第一场 8.21
2018/08/22 DOTA
python中执行shell命令的几个方法小结
2014/09/18 Python
批量获取及验证HTTP代理的Python脚本
2017/04/23 Python
Python cookbook(数据结构与算法)对切片命名清除索引的方法
2018/03/13 Python
Python实现的txt文件去重功能示例
2018/07/07 Python
python3.6+selenium实现操作Frame中的页面元素
2019/07/16 Python
Python函数参数类型及排序原理总结
2019/12/19 Python
Python-openCV读RGB通道图实例
2020/01/17 Python
python将下载到本地m3u8视频合成MP4的代码详解
2020/11/24 Python
CSS3解决移动页面上点击链接触发色块的问题
2016/06/03 HTML / CSS
用CSS3写的模仿iPhone中的返回按钮
2015/04/04 HTML / CSS
使用Html5 Stream开发实时监控系统
2020/06/02 HTML / CSS
世界上最大的冷却器制造商:Igloo Coolers
2019/07/23 全球购物
意大利网上书店:LaFeltrinelli
2020/06/12 全球购物
个人简历自我鉴定
2013/10/11 职场文书
毕业生个人求职的自我评价
2013/10/28 职场文书
2014党的群众路线教育实践活动学习心得体会
2014/10/31 职场文书
道路交通事故人身损害赔偿协议书
2014/11/19 职场文书
店面出租协议书范本
2014/11/28 职场文书