知识储备:
re,request等爬虫理论。利用os创建目录和已存在目录判断。
1.抓取52古装网
考虑到网络压力未采用异步,修改path地址为自己目录即可
import re
import requests
import os
heards={'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_16_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.163 Safari/537.36',\
'Referer': 'http://www.52guzhuang.com/forum-59-1.html'}
regular=re.compile(r'<a href="(?P<newurl>.*?)".*?>(?P<title>.*?)</p>',re.S)
regular2=re.compile(r'zoomfile="(?P<newurl2>.*?)"',re.S)
for kk in range(1,1200):
try:
url=f'http://www.52guzhuang.com/forum-59-{kk}.html'
text=requests.get(url,headers=heards).text
# print(text)
resp1=regular.finditer(text)
for i in resp1:
if i.group("newurl")[-4:]=="html":
# print(i.group("newurl"))
print(i.group("title").split(">")[-1])
# print('http://www.52guzhuang.com/'+i.group("newurl"))
text2=requests.get('http://www.52guzhuang.com/'+i.group("newurl"),headers=heards).text
resp2=regular2.finditer(text2)
for j in resp2:
print(j.group("newurl2"))
pic=requests.get(j.group("newurl2")).content
path='/Users/shenduxuexi/Desktop/汉服测试/'+i.group("title").split(">")[-1]+"/"
if os.path.exists(path)==True:
pass
else:
os.makedirs(path)
with open(path+j.group("newurl2").split("/")[-1],mode='wb') as fp:
fp.write(pic)
fp.close()
else:
continue
except:
continue
- os建立新目录和判断已存在目录
`
import os
path=“xxx”
# 存在 True
# 不存在 False
isExists=os.path.exists(path)
# 判断结果
if not isExists:
# 如果不存在则创建目录
# 创建目录操作函数
os.makedirs(path)
print path+' 创建成功'
return True
else:
# 如果目录存在则不创建,并提示目录已存在
print path+' 目录已存在'
return False
- 效果展示
视频效果如下:
抓取汉服小姐姐