怎么利用Python来收集图片数据
本篇内容主要讲解“怎么利用Python来收集图片数据”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么利用Python来收集图片数据”吧!
专注于为中小企业提供成都网站设计、做网站服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业牟平免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了超过千家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。
发送请求
我们首先确定网址,我们先使用开发者工具,定位到我们要的数据。发现,内容就在网页源代码中。
url = 'https://www.hexuexiao.cn/tj/WuJiayi/' res = requests.get(url) # print(res.text) html_url = re.findall('',res.text,re.S) urls = sorted(list(set(html_url)), key=html_url.index)
我们这里html_url
变量的值是一个正则表达式对象,用于匹配网站图片的链接。代码块 list(set(html_url))
将列表对象转换为集合对象,使用 set()
方法将列表对象转换为集合对象,这是一个将列表中的元素转换为集合的方法。html_url.index
是一个整数对象,表示 html_url
中各元素在原始 HTML 字符串中出现的次数,以此来实现排序。
保存数据
for url1 in urls: for page in range(0,10): url2 = f'https://www.hexuexiao.cn/a/{url1}-{page}.html' # print(url2) res1 = requests.get(url2) # print(res1.text) url3 = re.findall('',res1.text,re.S)[0] print(url3) url3=re.sub('',"",url3) print(url3)
我们这段代码中的 urls
列表是一个字典,其中键是 URL,值是页码。在循环中,我们使用 range()
函数从 0 到 9 迭代页码。接下来,我们使用 requests.get()
方法分别获取每个页面的 HTML 代码,并使用正则表达式匹配出所有的图片链接。最后,我们使用 requests.get()
方法获取每个图片链接的内容,并将其写入一个文件中。
保存图片
content = requests.get(url3).content with open('图片\' + str(num) + '.jpg', mode='wb') as f: f.write(content)
我们这段代码中的 content
变量的值是从图片链接 url3
中获取的内容。然后,使用 with open()
语句打开一个二进制文件,并将 content
写入文件中。在这个过程中,num
变量的值是当前文件中的图片序号。获取图片和我们之前获取音频一样,都是保存成二进制文件。
这样,我们的图片数据就保存下来了。这里,我就不展示效果了,原理都是一样的,找到图片的地址,我们就可以获取下来。
到此,相信大家对“怎么利用Python来收集图片数据”有了更深的了解,不妨来实际操作一番吧!这里是创新互联网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
网站题目:怎么利用Python来收集图片数据
文章链接:http://pwwzsj.com/article/peiocc.html