下面是关于Python3直接爬取图片URL并保存的攻略:
1. 准备工作
在爬取图片之前需要进行一些准备工作:
- 安装Python3
- 安装requests库和beautifulsoup4库,这两个库是用来发送HTTP请求和解析HTML的,可以使用pip安装:
pip install requests beautifulsoup4
2. 爬取图片URL
要爬取图片URL,第一步就是要先请求页面并获取页面的HTML代码。可以使用requests库发送HTTP请求,代码如下:
import requests
url = 'https://www.example.com'
response = requests.get(url)
html = response.text
这里的url
就是需要爬取的网页地址,然后使用requests.get()方法发送GET请求并获取响应。最后,将响应的HTML代码保存在变量html
中。
接下来,需要使用beautifulsoup4库解析HTML代码,将其中的图片链接提取出来。示例代码如下:
from bs4 import BeautifulSoup
soup = BeautifulSoup(html)
img_tags = soup.find_all('img')
urls = []
for img in img_tags:
urls.append(img['src'])
这里的img_tags
是使用BeautifulSoup的find_all()方法查找页面中的img标签并返回它们的列表。接着,使用for循环遍历img标签列表,并使用img['src']
提取出每个img标签的src属性,即图片链接。最后,将所有提取出的链接保存在变量urls
中。
3.保存图片
将图片URL爬取出来后,就可以进行保存图片的操作了。示例代码如下:
import os
folder_path = 'images'
for i, url in enumerate(urls):
response = requests.get(url)
image_name = f'image_{i}.jpg'
file_path = os.path.join(folder_path, image_name)
with open(file_path, 'wb') as f:
f.write(response.content)
这里的folder_path
是保存图片的文件夹路径,如果不存在则会自动创建。使用enumerate()函数计数遍历每个图片链接,然后发送HTTP请求获取每个链接对应的图片内容。接着,生成一个唯一的图片名,最后使用with语句打开文件并将图片内容写入文件即可。
这就是完整的Python3直接爬取图片URL并保存示例的攻略。如果需要爬取其他网站的图片,只需要更改url
的值即可。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python3直接爬取图片URL并保存示例 - Python技术站