safari 源代码 预览图片_python百度图片相关操作

import re, os, requests

def tuPian(word):

# 把关键字和我们的url拼接起来

start_url = "http://image.baidu.com/search/flip?tn=baiduimage&ie=utf-8&word=" + word + "&pn={}&ct=&ic=0&lm=-1&width=0&height=0"

headers = {

"User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36"}

for i in range(10): # 写一个循环, 可以得到更多的图片

url = start_url.format(i * 60) # 得到不同的url

"""获取当前页面所有图片的ulr列表"""

r = requests.get(url, headers=headers)

ret = r.text # 得到源代码, 里面有每一张图片的url

pic_url_list = re.findall('"objURL":"(.*?)",.*?""', ret) # 找到所有图片的url, 提取出来

print('*' * 50)

print('-----正在保存第%d页图片-----' % (i + 1))

for pic_url in pic_url_list:

print(pic_url)

# 有的名字里面有/, 不能允许, 所以得替换成空, 并且图片名字以url后10位来命名

path = re.sub('/', '', pic_url[-10:])

# 判断url是不是以图片类型来结尾

end = re.search('(.jpg|.jpeg|.png)$', path)

if end == None:

# 如果不是以图片类型来结尾, 就加上一个后缀名

path = path + '.jpg'

# 因为有的图片url已经失效了, 所以访问肯定会失败, 我们就得捕获异常

try:

# 保存的路径和图片名字的拼接

with open('./' + word + '/{}'.format(path), 'ab') as f:

pic = requests.get(pic_url, headers=headers, timeout=1)

f.write(pic.content)

print('正在下载第%d张图片' % (pic_url_list.index(pic_url) + 1))

except Exception:

pass

if __name__ == '__main__':

word = input('请输入关键字: ')

if not os.path.exists(word):

os.mkdir(word) # 创建文件夹

tuPian(word)

执行完毕后,图片保存在以关键字为名称的文件夹下,该文件夹与py文件所在目录为同一目录.

834cad2bda31aa2929a2d5b9ca085dd9.png
e30a15a07d6d12beda6ffdacfe1faeaf.png
f3e96d70e0bd6cbd34964b2a5b0792bc.png
af0fabdc325519a1a0e79014b7ac43b9.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值