用python写一个爬取图片的爬虫
时间: 2023-02-28 15:46:51 浏览: 22
很高兴为您解答!爬取图片的爬虫可以使用Python语言编写,可以通过调用urllib库中的urlretrieve()函数来获取图片,可以参考以下代码:
import urllib.request
url = 'http://example.com/image.png'
urllib.request.urlretrieve(url, 'image.png')
相关问题
使用python写一个爬取百度图片的爬虫
好的,以下是使用Python编写爬取百度图片的爬虫的代码:
```python
import requests
import re
def get_img_urls(keyword, num):
imgs = []
for i in range(num):
url = f'https://image.baidu.com/search/acjson?tn=resultjson_com&ipn=rj&word={keyword}&pn={i * 30}&rn=30'
response = requests.get(url)
img_urls = re.findall(r'"thumbURL":"(.*?)",', response.text)
imgs += img_urls
return imgs
def download_imgs(keyword, num):
img_urls = get_img_urls(keyword, num)
for i, url in enumerate(img_urls):
response = requests.get(url)
with open(f'{keyword}_{i}.jpg', 'wb') as f:
f.write(response.content)
print(f'Saved {keyword}_{i}.jpg')
if __name__ == '__main__':
download_imgs('猫', 10)
```
这个爬虫可以通过搜索关键词来爬取百度图片,并下载到本地。
用python写一个爬取百度图片的爬虫
好的,以下是用Python编写的爬虫程序获取百度图片:
```python
import requests
from urllib.parse import urlencode
# 将关键字转换为URL格式
def get_keyword_url(keyword):
params = {
'tn': 'result_top',
'word': keyword
}
return 'https://image.baidu.com/search/index?' + urlencode(params)
# 获取图片的下载地址
def get_image_urls(url):
response = requests.get(url)
# 使用正则表达式提取图片下载地址
pattern = r'"thumbURL":"(https://.*?\.jpg)"'
image_urls = re.findall(pattern, response.text)
return image_urls
# 下载图片并保存到指定目录
def download_images(image_urls, save_path):
for url in image_urls:
response = requests.get(url)
# 以二进制模式保存图片
with open(save_path + url.split('/')[-1], 'wb') as f:
f.write(response.content)
print(url, '下载完成')
# 搜索关键词并下载图片
def search_and_download(keyword, count=10, save_path=''):
url = get_keyword_url(keyword)
image_urls = get_image_urls(url)
download_images(image_urls[:count], save_path)
print('所有图片下载完成')
# 测试程序
if __name__ == '__main__':
keyword = '美女'
search_and_download(keyword, 10, './images/')
```
这个程序中的 `get_keyword_url` 函数会将关键字转换为百度图片搜索的URL格式,`get_image_urls` 函数会根据给定的URL来提取图片的下载地址,`download_images` 函数则会下载这些图片并保存到指定目录下。
最后,`search_and_download` 函数会调用这些子函数来实现图片的搜索和下载。在这个例子中,我传入了关键字 “美女”,然后下载了前十张搜索结果中的图片,并将它们保存到 `./images/` 目录下。
希望能够帮到你!
阅读全文