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使用循环实现批量创建文件夹示例
Mar 25 Python
Python中__call__用法实例
Aug 29 Python
简单介绍Python的Django框架加载模版的方式
Jul 20 Python
linux环境下的python安装过程图解(含setuptools)
Nov 22 Python
python unittest实现api自动化测试
Apr 04 Python
在Pycharm中将pyinstaller加入External Tools的方法
Jan 16 Python
python将excel转换为csv的代码方法总结
Jul 03 Python
python 列表、字典和集合的添加和删除操作
Dec 16 Python
Python图片处理模块PIL操作方法(pillow)
Apr 07 Python
Python Excel vlookup函数实现过程解析
Jun 22 Python
Python配置pip国内镜像源的实现
Aug 20 Python
利用Python的folium包绘制城市道路图的实现示例
Aug 24 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
Thinkphp的volist标签嵌套循环使用教程
2014/07/08 PHP
php使用ffmpeg向视频中添加文字字幕的实现方法
2016/05/23 PHP
php出租房数据管理及搜索页面
2017/05/23 PHP
PHP单例模式与工厂模式详解
2017/08/29 PHP
JS读取cookies信息(记录用户名)
2012/01/10 Javascript
JavaScript中的console.group()函数详细介绍
2014/12/29 Javascript
AngularJS语法详解
2015/01/23 Javascript
jQuery+HTML5加入购物车代码分享
2020/10/29 Javascript
jquery实现的伪分页效果代码
2015/10/29 Javascript
原生JS实现图片翻书效果
2017/02/16 Javascript
javascript实现拖拽碰撞检测
2020/03/12 Javascript
Webpack中SplitChunksPlugin 配置参数详解
2020/03/24 Javascript
js前端对于大量数据的展示方式及处理方法
2020/12/02 Javascript
python使用正则表达式替换匹配成功的组并输出替换的次数
2017/11/22 Python
python实现一个简单的并查集的示例代码
2018/03/19 Python
Python实现爬虫从网络上下载文档的实例代码
2018/06/13 Python
浅谈Python traceback的优雅处理
2018/08/31 Python
Python调用C++,通过Pybind11制作Python接口
2018/10/16 Python
python获取本机所有IP地址的方法
2018/12/26 Python
Python下opencv图像阈值处理的使用笔记
2019/08/04 Python
python内置模块collections知识点总结
2019/12/19 Python
jupyter notebook清除输出方式
2020/04/10 Python
5款实用的python 工具推荐
2020/10/13 Python
基于Python模拟浏览器发送http请求
2020/11/06 Python
python 实现图片裁剪小工具
2021/02/02 Python
浅析移动设备HTML5页面布局
2015/12/01 HTML / CSS
大学生活学习的自我评价
2013/12/03 职场文书
学生会个人自荐书范文
2014/02/12 职场文书
关于元旦的广播稿
2014/02/16 职场文书
会计学自荐信
2014/06/03 职场文书
自我管理的活动方案
2014/08/25 职场文书
乡镇党建工作汇报材料
2014/10/27 职场文书
小升初自荐信怎么写
2015/03/26 职场文书
两行代码解决Jupyter Notebook中文不能显示的问题
2021/04/24 Python
pytorch 运行一段时间后出现GPU OOM的问题
2021/06/02 Python
javascript进阶篇深拷贝实现的四种方式
2022/07/07 Javascript