python学习之爬取斗图网表情包

1.环境:python3.6以及PyCharm

安装python

安装Pycharm

2.需要用到的库有requests ,urllib , bs4 ,os,threading

可以参照:Mac下PyCharm导入第三方包

Request:用来请求网络数据

Beautifulsoup4:用来解析html文档,过滤所需数据

urllib:用来操作网页url

threading:用来做多线程~

接下来进入正题:


1.首先获取所有要下载的网页的URL,怕太多,我这边只载1-10页

python学习之爬取斗图网表情包_第1张图片
获取页面URL

2.接着便是获取页面中的图片的url

使用lxml解析,寻找到所有的img,将所有图片地址遍历过去

其中有用到全局变量的,使用gLock.acquire()和gLock.release()加锁解锁下,避免多线程运行时冲突

url = img.get('data-original', 'http://ww3.sinaimg.cn/bmiddle/9150e4e5ly1fpzs6elzerg20470430w7.gif')这行,有些图片没有get到data-original的话,后面split去分割"/"会出错,所以就写了个固定的地址填充下

python学习之爬取斗图网表情包_第2张图片
获取图片url

3.获取到每个图片的地址后,截取所有图片的名字,作为保存到本地的图片名字,保存在文件夹为images目录底下。

然后使用urlretrieve()方法将图片载下来


python学习之爬取斗图网表情包_第3张图片
下载图片

4.由于页面如果很多多话,一个一个跑太慢了,于是加了一个多线程


python学习之爬取斗图网表情包_第4张图片
多线程


以上~~~一个简单的爬取网站图片的功能就完成啦!!

毕竟第一个PY实验~人生苦短,我用python


python学习之爬取斗图网表情包_第5张图片

你可能感兴趣的:(python学习之爬取斗图网表情包)