python接口自动化测试十八:使用bs4框架爬取图片

python接口自动化测试十八:使用bs4框架爬取图片


# 爬图片

# 目标网站:http://699pic.com/sousuo-218808-13-1.html

import requests

from bs4 import BeautifulSoup

import os

r = requests.get('http://699pic.com/sousuo-218808-13-1.html')

# r.content  # 返回的是字节流

soup = BeautifulSoup(r.content, 'html.parser')  # 用html解析器,查找r.content

# tu = soup.find_all('img')  # 查找所有的标签名字为“img”的对象

tu = soup.find_all(class_="lazy")  # 查找所有的标签名字为“class_="lazy"”的对象

for i in tu:

#    print(i)

print(i['data-original'])  # 获取所有的url地址

# 爬单张图片

url = 'http://img95.699pic.com/photo/50061/5608.jpg_wh300.jpg'

r = requests.get(url)

f = open('123.jpg', 'wb')  # 以二进制写入的方式打开一个名为123.jpg的文件 (后缀可随意改)

f.write(r.content)  # 把r传输的字节流写入到文件中

f.close()  # 关闭文件


# 批量写入:

# 创建路径,  创建一个名为“tupian”的文件夹

curpath = os.path.dirname(os.path.dirname(os.path.realpath(__file__)))

tupian = os.path.join(curpath, 'tupian')

if not os.path.exists(tupian):  # 判断名字为“tupian”的文件夹是否为不存在

os.mkdir(tupian)        # 不存在,则创建名字为“tupian”的文件夹

# 批量写入图片并保存

for i in tu:

try:

jpg_url = i['data-original']    # 要获取的图片的地址

name = i['alt']

r = requests.get(jpg_url)

# 写入内容,放到tupian文件夹下

f = open(os.path.join(tupian, '%s.jpg'%name), 'wb')

f.write(r.content)

f.close()

except:

pass


转载于:https://www.cnblogs.com/dwdw/p/9553228.html

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容