don't be
shy.py#coding=utf-8
import requests #导入 requests 模块
from bs4 import BeautifulSoup #导入 BeautifulSoup 模块
import os #导入 os 模块
class haixiu():
def __init__(self): #类的初始化操作
self.headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64; rv:53.0) Gecko/20100101 Firefox/53.0'} #给请求指定一个请求头来模拟 ff 浏览器
self.web_url = '
http://www.dbmeinv.com/dbgroup/current.htm?gid=haixiuzu' #要访问的网页地址
self.folder_path = 'D:\haixiu' #设置图片要存放的文件目录
def get_pic(self):
print('开始网页 get 请求')
r = self.request(self.web_url)
print('开始获取所有 a 标签')
all_a = BeautifulSoup(r.text, 'lxml').find_all('a', class_='links') #获取网页中的 class 为 links 的所有 a 标签
print('开始创建文件夹')
self.mkdir(self.folder_path) #创建文件夹
print('开始切换文件夹')
os.chdir(self.folder_path) #切换路径至上面创建的文件夹
for a in all_a:
img_str = a['src']
print('a 标签的 style 内容是:',img_str)
img_name = a['title']
self.save_img(img_str, img_name) #调用 save_img 方法来保存图片
def save_img(self, url, name): ##保存图片
print('开始请求图片地址,过程会有点长...')
img = self.request(url)
file_name = name + '.jpg'
print('开始保存图片')
f = open(file_name, 'ab')
f.write(img.content)
print(file_name,'图片保存成功!')
f.close()
def request(self, url): #返回网页的 response
r = requests.get(url, headers=self.headers) # 像目标 url 地址发送 get 请求,返回一个 response 对象。有没有 headers 参数都可以。
return r
def mkdir(self, path): ##这个函数创建文件夹
path = path.strip()
isExists = os.path.exists(path)
if not isExists:
print('创建名字叫做', path, '的文件夹')
os.makedirs(path)
print('创建成功!')
else:
print(path, '文件夹已经存在了,不再创建')
beauty = haixiu() #创建类的实例
beauty.get_pic() #执行类中的方法
(望大神指点,谢谢!!)
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
https://www.v2ex.com/t/360762
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.