Compare commits

..

1 Commits

Author SHA1 Message Date
psjyva5l8 d81717feb7 ADD file via upload
3 years ago

Binary file not shown.

@ -0,0 +1,76 @@
import os
import datetime
import time
from asyncio import futures
import requests
import re
Max_Workers = 24 # 最大线程数
# 打开目标网站
def work(index):
url = 'https://pic.netbian.com/index_' + str(index) + '.html'
req = requests.get(url)
return req.text
# 使用正则表达式匹配图片访问链接
def matchPicUrl(html):
# regexp = r'src="(/uploads.*?\.jpg)"'
regexp = r'<a href="(/tupian.*?)"'
pattern = re.compile(regexp)
result = re.findall(pattern, html)
return result
# 匹配到图片的下载地址
def openPicurl(picurl1, filePath,index):
url = "https://pic.netbian.com/" + picurl1
req = requests.get(url)
regexp = r'src="(/uploads.*?\.jpg)"'
pattern = re.compile(regexp)
# 只需要使用得到的第一个链接就可以了
result = re.findall(pattern, req.text)
download(result[0], index, filePath)
# 下载图片
def download(picurl, index, filePath):
url = "https://pic.netbian.com" + picurl
req = requests.get(url)
fb = open("{}/第{}张图.jpg".format(filePath, index), "wb")
fb.write(req.content)
fb.flush()
fb.close()
print("{}张图片下载完成".format(index))
def main():
print("声明:仅供参考学习!!!!")
print("最大页面数为 1000")
n = eval(input("请输入爬取页面数="))
index = 1
start = time.time()
for i in range(2,n+1):
# 获取页面内容
html = work(i)
picUrls_1 = matchPicUrl(html)
timeStr = datetime.datetime.strftime(datetime.datetime.now(), '%Y-%m-%d-%H-%M-%S')
filepath = 'd:\spiderFile\\'+timeStr
# 创建多级目录
os.makedirs(filepath)
print("文件夹创建成功")
# 打开图片地址,下载图片
# workers = min(Max_Workers,len(picUrls_1))
# with futures.ThreadPoolExecutor(workers) as executor:
# res = executor.map(download())
for index in range(0,len(picUrls_1)):
openPicurl(picUrls_1[index], filepath,index+1)
print("图片保存在"+filepath)
end = time.time()
print("下载完成!")
print("一共耗时: {} s".format(end - start))
main()

@ -1,90 +0,0 @@
import turtle as t
def hair(): # 画头发
t.penup()
t.goto(-50, 150)
t.pendown()
t.fillcolor('#a2774d')
t.begin_fill()
for j in range(10): # 重复执行10次
t.setheading(60 - (j * 36)) # 每次调整初始角度
t.circle(-50, 120) # 画120度的弧
t.end_fill()
def face(): # 画脸
t.penup()#画笔启动
t.goto(0, 100)#移到指定坐标
t.pendown()#画笔落下
t.fillcolor('#f2ae20')#填充颜色
t.begin_fill()#开始填充
t.setheading(180)#设置角度
t.circle(85)#画圆
t.end_fill()#结束填充
# 下巴
t.circle(85, 120)
t.fillcolor('white')
t.begin_fill()
t.circle(85, 120)
t.setheading(135)
t.circle(100, 95)
t.end_fill()
def ears(dir): # 画眼睛dir用来设置方向左右眼对称
t.penup()
t.goto((0 - dir) * 30, 90)
t.setheading(90)
t.pendown()
t.fillcolor('#f2ae20')
t.begin_fill()
t.circle(dir * 30)
t.end_fill()
t.penup()
t.goto((0 - dir) * 40, 85)
t.setheading(90)
t.pendown()
t.fillcolor('white')
t.begin_fill()
t.circle(dir * 17)
t.end_fill()
def nose(): # 画鼻子
t.penup()
t.goto(20, 0)
t.setheading(90)
t.pendown()
t.fillcolor('#a2774d')
t.begin_fill()
t.circle(20)
t.end_fill()
def eye(dir): # 画耳朵dir用来设置方向左右耳对称
t.penup()
t.goto((0 - dir) * 30, 20)
t.setheading(0)
t.pendown()
t.fillcolor('black')
t.begin_fill()
t.circle(10)
t.end_fill()
def mouth(): # 画嘴巴
t.penup()
t.goto(0, 0)
t.setheading(-90)
t.pendown()
t.forward(50)
t.setheading(0)
t.circle(80, 30)
t.penup()
t.goto(0, -50)
t.setheading(180)
t.pendown()
t.circle(-80, 30)
if __name__ == "__main__":
hair() # 头发 苏靖
ears(1) #左右耳朵 罗鹏
ears(-1)
face()#face 谭江涛
eye(1) #左右眼睛 李泽宇
eye(-1)
mouth()#嘴 王如瑾
nose()#鼻子 罗鹏
t.done()#结束 张智
main()
Loading…
Cancel
Save