Python 网络爬虫(错误之处,敬请斧正)
很久没有用python了,心血来潮写一下自己对于学习python获取网络数据的总结。
工具
python版本: 3.5
IDE : pycharm 5.0.4
要用到的包可以用pycharm下载:
File->Default Settings->Default Project->Project Interpreter
选择python版本并点右边的加号安装想要的包
这里以爬取图片为例:
获取目的网站的信息:
#coding=utf-8 //中文编码
import urllib2
url = "http://tieba.baidu.com/p/2738151262"def getHtml():request = urllib2.Request(url)response = urllib2.urlopen(request)html = response.read()return html
urllib2 模块提供了读取web页面数据的接口,我们可以像读取本地文件一样读取www和ftp上的数据。首先,我们定义了一个getHtml()函数:
urllib2.urlopen()方法用于打开一个URL地址。
read()方法用于读取URL上的数据,向getHtml()函数传递一个网址,并把整个页面下载下来。返回结果。
利用正则表达式对爬取的网页进行筛选
正则表达式的知识
审查图片元素,观察我们要获取的图片对应的网页代码是什么样的!!!
添加代码
def getImg(html):reg = r'src="(.+?\.jpg)" pic_ext'imgre = re.compile(reg)imglist = re.findall(imgre,html)return imglist
re.compile() 可以把正则表达式编译成一个正则表达式对象.
re.findall() 方法读取html 中包含 imgre(正则表达式)的数据。
运行脚本将得到整个页面中包含图片的URL地址。
将页面筛选的数据保存到本地
使用for循环
修改代码如下:
#coding=utf-8
import urllib2
url = "http://tieba.baidu.com/p/2738151262"def getHtml():request = urllib2.Request(url)response = urllib2.urlopen(request)html = response.read()return htmldef getImg(html):reg = r'src="(.+?\.jpg)" pic_ext'imgre = re.compile(reg)imglist = re.findall(imgre,html)x = 0for imgurl in imglist:urllib.urlretrieve(imgurl,'%s.jpg' % x)x+=1if __name__ == "__main__":html = getHtml()getImg(html)
或者
//注意aw与w的区别
with open('out.txt','aw') as file:file.write('%s\n' % imgurl)
//图片对应的url
Python 网络爬虫(错误之处,敬请斧正)相关推荐
- JavaScript中函数的四种调用方式(若有错误之处请斧正)
函数的几种调用方式 一.一般形式函数的直接调用 fun(); 二.作为对象的方法调用 var obj = {name:"123",sayMyage:function(age){al ...
- python网络爬虫系列教程_Python网络爬虫系列教程连载 ----长期更新中,敬请关注!...
感谢大家长期对Python爱好者社区的支持,后期Python爱好者社区推出Python网络爬虫系列教程.欢迎大家关注.以下系列教程大纲,欢迎大家补充.视频长期连载更新中 --------------- ...
- 精通python网络爬虫-精通python网络爬虫
广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 作者:韦玮 转载请注明出处 随着大数据时代的到来,人们对数据资源的需求越来越多, ...
- 如何利用Python网络爬虫爬取微信朋友圈动态--附代码(下)
前天给大家分享了如何利用Python网络爬虫爬取微信朋友圈数据的上篇(理论篇),今天给大家分享一下代码实现(实战篇),接着上篇往下继续深入. 一.代码实现 1.修改Scrapy项目中的items.py ...
- 开源 Python网络爬虫框架 Scrapy
开源 Python 网络爬虫框架 Scrapy:http://blog.csdn.net/zbyufei/article/details/7554322 介绍 所谓网络爬虫,就是一个在网上到处或定向抓 ...
- python 网页版笔记_系统学习下python网络爬虫 笔记一
系统学习下python网络爬虫的知识 1.爬虫的定义 Web Spider,把互联网定义为一个蜘蛛网,网络蜘蛛通过网页的链接地址来寻找网页. 具体过程:从网站的某一个网页(通常是首页)开始,读取网页的 ...
- python朋友圈动态_如何利用Python网络爬虫爬取微信朋友圈动态--附代码(下)
前天给大家分享了如何利用Python网络爬虫爬取微信朋友圈数据的上篇(理论篇),今天给大家分享一下代码实现(实战篇),接着上篇往下继续深入. 一.代码实现 1.修改Scrapy项目中的items.py ...
- python抓取朋友圈动态_如何利用Python网络爬虫爬取微信朋友圈动态--附代码(下)...
原标题:如何利用Python网络爬虫爬取微信朋友圈动态--附代码(下) 前天给大家分享了如何利用Python网络爬虫爬取微信朋友圈数据的上篇(理论篇),今天给大家分享一下代码实现(实战篇),接着上篇往 ...
- Python网络爬虫(一):爬虫基础
Python网络爬虫(一)爬虫基础 一.爬虫基础 1.HTTP基本原理 1.1URI和URL URI,全称:Uniform Resource Identifier,即统一资源标志符:URL,全称:Un ...
- python 网络爬虫
一.网络爬虫的定义 网络爬虫,即Web Spider,是一个很形象的名字. 把互联网比喻成一个蜘蛛网,那么Spider就是在网上爬来爬去的蜘蛛. 网络蜘蛛是通过网页的链接地址来寻找网页的. 从网站某一 ...
最新文章
- CVPR 2021|三维视觉相关论文汇总
- 速度比晶体管快1000倍,新型单光子开关登上Nature
- python第三方库有哪些-我常用的几个第三方 Python 库
- 485转换器产品功能特点及技术参数介绍
- python函数定义关键字_Python(2)深入Python函数定义
- Spark 连接 HBase 入库及查询操作
- linux二进制数据16进制数据转换,[轉]16进制字符文本/二进制文件迷你互转器
- 太原理工大学荣获2020(第二届)集成电路EDA设计精英挑战赛一等奖
- theano 深度学习大全
- DirectX (13) 粒子系统
- PHP树形结构数据处理成面包屑结构
- python中if __name__ == __main__:用法解析
- VS2017+海康威视工业相机调用查找不到设备的问题
- [FOI2020WC模拟]看上去很简单
- 跨界打劫!中医保健店用一招免费洗车,快速引流进店,月赚20万
- 【实用技巧】知网文献不限量免费下载方法,亲测可用
- php获取农历日期节日
- windows html封装,怎样win7自带的sysprep封装系统
- 易基因 | 简化基因组DNA甲基化测序(RRBS)实验怎么做?
- oracle ora00940,ORA-32773问题的解决方法。