用python爬取百度图片,python网页图片抓取
序
自从学了编程,就一直听人说什么爬虫,到处爬。我心想,老是爬来爬去,你累不累?有什么好爬的,而且没用?前两天无聊,想看看python爬网站的鬼是什么,就开始上网学习,从下载python到配置,从找喜欢的网站到爬锅。现在我总结一下。
准备
1.下载一个python安装并配置环境变量,这类似于java。
下载地址:https://www.python.org/downloads/windows/,官网点击下载
下载安装程序,然后直接安装。也可以自己选择下载位置,最后配置环境变量。
配置环境变量以配置python和脚本。
验证配置是否成功。cmd打开命令行,输入python -V,如图,证明环境变量配置成功。
2.脚本
#导入必要的包
从selenium导入web驱动程序
从bs4导入BeautifulSoup
导入请求
#打开谷歌浏览器
driver=webdriver。铬合金()
#将网站设置为爬网
driver . get( http://pic . net bian . com/4k meinv/)
#初始化一个引用计数,用于简单命名以下图片。
指数=1
#定义爬虫方法
def getImage():
#将索引设置为全局变量
全球指数
#遍历循环,遍历了多少页图片。
对于范围内的I(0,50):
#模拟点击下一页,因为爬完一页需要点击下一页才能爬。
driver . find _ element _ by _ link _ text(下一页)。单击()
#解析网页
html=beautiful soup(driver . page _ source, html.parser )
#获取原始图像的url链接
links=html.find(div ,{class: slist})。查找全部( img )
#遍历当前页面获取的原始图像的所有链接
对于链接中的链接:
#将原图保存到当前目录下的jdimg文件夹中,用index命名,后缀为原图名的后三位,即jpg或gif。
with open(baidu8/{}。{}.格式(index,link . get( src )[len(link . get( src ))-3:len(link . get( src )), wb )为jpg:
jpg . write(requests . get( http://pic . net bian . com/ link . get( src ))。内容)
打印(搜索%s图片 %索引)
指数=1
#定义主函数
def main():
getImage()
Main()我们用记事本写这个脚本,然后修改后缀命名为py,然后在同一级目录下创建一个文件夹存放图片。代码中的文件夹必须提前创建,否则操作会报错,找不到文件夹,如图。
我这里的文件夹是用来存放图片的,已经满了。
运行脚本
Cmd进入命令行,比如我在这里进入d盘的测试文件夹,如图。
我们输入py baidu.py来运行我们的脚本,前提是我们已经配置了环境变量,所以我们可以在任何地方运行python脚本。最终结果如图所示。
* *最新调整* *
最近由于很多同学反映下载的图片打不开,应该是更新了,所以我重新调整了源代码。现在源代码如下。
#导入必要的包
从selenium导入web驱动程序
从bs4导入BeautifulSoup
导入请求
#打开谷歌浏览器
driver=webdriver。铬合金()
#将网站设置为爬网
driver . get( http://pic . net bian . com/4k meinv/)
#初始化一个引用计数,用于简单命名以下图片。
指数=1
#定义爬虫方法
def getImage():
#将索引设置为全局变量
全球指数
#遍历循环,遍历了多少页图片。
对于范围内的I(0,50):
#模拟点击下一页,因为爬完一页需要点击下一页才能爬。
driver . find _ element _ by _ link _ text(下一页)。单击()
#解析网页
html=beautiful soup(driver . page _ source, html.parser )
#获取原始图像的url链接
links=html.find(div ,{class: slist})。查找全部( img )
#遍历当前页面获取的原始图像的所有链接
对于链接中的链接:
#将原图保存到当前目录下的baidu8文件夹,以index命名,后缀为jpg。
with open(baidu8/{}。jpg。格式(索引),“wb”)为jpg:
jpg . write(requests . get( http://pic . net bian . com/ link . get( src ))。内容)
打印(搜索%s图片 %索引)
指数=1
#定义主函数
def main():
getImage()
Main()摘要
技术是一把双刃剑。希望你能合理利用技术,下次分享小视频的内容,最后说一句,老铁早点睡。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。