python爬取批量图片代码
时间: 2023-10-01 08:11:08 浏览: 110
以下是使用Python爬取批量图片的代码:
```python
import requests
import os
# 创建存储图片的文件夹
if not os.path.exists('images'):
os.makedirs('images')
# 爬取图片
url = 'http://example.com/images/'
for i in range(1, 11):
image_url = url + str(i) + '.jpg'
response = requests.get(image_url)
with open('images/' + str(i) + '.jpg', 'wb') as f:
f.write(response.content)
```
以上代码将从`http://example.com/images/1.jpg`到`http://example.com/images/10.jpg`的所有图片保存在`images`文件夹中。你可以根据自己的需要修改代码来适应不同的爬取需求。
相关问题
用python爬虫爬取图片的步骤-利用Python爬取网页图片
好的,以下是用Python爬虫爬取图片的步骤:
1. 导入需要的库:requests、os、urllib。
2. 使用requests库发送请求,获取网页的HTML源代码。
3. 使用BeautifulSoup库解析HTML源代码,获取图片的URL地址。
4. 使用os库创建一个本地文件夹,用于存储下载的图片。
5. 使用urllib库下载图片,并保存在本地文件夹中。
6. 将上述步骤封装成函数,可用于批量下载图片。
下面是一个简单的代码示例:
```
import requests
import os
from bs4 import BeautifulSoup
import urllib
def download_images(url, folder_path):
# 发送请求,获取HTML源代码
response = requests.get(url)
html = response.text
soup = BeautifulSoup(html, 'html.parser')
# 查找所有的图片标签
img_tags = soup.findAll('img')
# 创建本地文件夹
os.makedirs(folder_path, exist_ok=True)
# 遍历所有图片标签,下载图片并保存到本地文件夹中
for img_tag in img_tags:
img_url = img_tag.get('src')
if img_url:
img_path = os.path.join(folder_path, img_url.split('/')[-1])
urllib.request.urlretrieve(img_url, img_path)
# 调用函数,下载图片
download_images('https://www.example.com', 'images')
```
上述代码中,函数`download_images`接受两个参数:`url`表示要下载图片的网页URL地址,`folder_path`表示要保存下载图片的本地文件夹路径。函数使用requests库发送请求,获取HTML源代码,然后使用BeautifulSoup库解析HTML代码,查找所有的图片标签,遍历所有图片标签,下载图片并保存到本地文件夹中。最后调用`download_images`函数,传入相应的参数即可完成图片下载。
批量爬取图片Python代码
以下是一个简单的Python代码,可以用来批量爬取图片:
```python
import requests
from bs4 import BeautifulSoup
import os
# 获取页面的HTML代码
def get_html(url):
try:
r = requests.get(url)
r.raise_for_status()
r.encoding = r.apparent_encoding
return r.text
except:
return ""
# 获取图片链接并下载图片
def download_img(url, root):
try:
r = requests.get(url)
r.raise_for_status()
# 获取图片名称
path = os.path.join(root, url.split("/")[-1])
# 写入文件
with open(path, "wb") as f:
f.write(r.content)
print("图片下载完成!")
except:
print("图片下载失败!")
# 爬取图片
def crawl_images(url, root):
html = get_html(url)
soup = BeautifulSoup(html, "html.parser")
# 获取所有的图片链接
img_links = soup.find_all("img")
for link in img_links:
img_url = link.get("src")
if img_url and img_url.startswith("http"):
download_img(img_url, root)
if __name__ == "__main__":
url = input("请输入要爬取的网页URL:")
root = input("请输入图片保存路径:")
crawl_images(url, root)
```
运行代码后,程序会要求输入要爬取的网页URL和图片保存路径。程序会自动爬取网页中所有的图片链接,并将图片保存到指定路径下。
阅读全文