好友
阅读权限10
听众
最后登录1970-1-1
|
Ls雷
发表于 2018-5-11 00:31
本帖最后由 wushaominkk 于 2018-5-11 11:50 编辑
[Python] 纯文本查看 复制代码 import requests
import re
import os
def write_img(all_imgs):
for img in all_imgs:
url = "http:///" + str(img) + '.jpg'
print(url)
request = requests.get(url)
# 判断images文件夹是否存在不存在就创建然后写入数据
if not os.path.exists("./images/"):
os.makedirs("./images/")
with open("./images/" + url[url.rfind('/'):-4] + '.jpg', 'wb') as f:
f.write(request.content)
# 信息写入texts文件夹内使用os模块判断是否存在文件夹不存在就创建
# 因为不能吧all_party的列表下标写死,所以就根据所有图片的for循环都是从0开始
# 动态写入每个人的信息
if not os.path.exists('./texts/'):
os.makedirs('./texts/')
with open("./texts/" + url[url.rfind('/'):-4] + '.txt', 'w') as f:
f.write(all_party[all_imgs.index(img)])
all_party = [] # 存放所有人的信息
all_imgs = [] # 存放所有人的照片链接
def main():
request = requests.get("http://")
html = request.content.decode()
content2 = re.compile(r'<div class="teacher_content"(.*?)<p style="padding-top:10px;">', re.S)
con2 = content2.findall(html)
# 特殊字符第一位
hsp = re.compile(r'<div class="teacher_content"(.*?)<a name="lhf">', re.S)
hsp = hsp.findall(html)
hsp = str(hsp)
hsp = hsp.split('l">')[1]
#数据过滤
hsp = str(hsp).replace("</div>", '').replace('<div class="r">', '') \
.replace("']", '')
# 加进空列表
all_party.append(hsp)
content = re.compile(r'(.*?)<img src="(.*?).jpg">')
all_str = content.findall(str(con2))
for s in all_str[2:]:
s = str(s)
# 数据过滤
s = s.replace('<div class="weibo">', '').replace('<div class="l">', '') \
.replace('</div>', '').replace('<div class="r">', '').replace('<p>', '').replace('</p>', '') \
.replace('<br />', '').replace("<br>", '').replace('<br/>', '').replace('<span class="teacherfont">', '') \
.replace('<a href="download.shtml#1">', '').replace('</a>', '').replace('</span>', '').replace('<span class="teachervideo" >', '') \
.replace('<a name="zxf">', '').replace('<div class="teacher_content">', '').replace("('", '').replace('("', '')
s = s[:s.rfind(',')]
all_party.append(s)
# 特殊字符最后一位
sls = re.compile(r'<img src="teacher/xnw.jpg"(.*?)<p style="padding-top:10px;">', re.S)
sls = sls.findall(html)
#数据过滤
sls = str(sls).replace("'>", '').replace('<p>', '').replace('</p>', '').replace("']", '')
all_party.append(str(sls))
# 全部照片
img = re.compile(r'<img src="(.*?).jpg">')
all_img = img.findall(str(con2))
for i in all_img:
i = i.split('="')[-1:]
i = str(i).split("['")[1]
i = str(i).split("']")[0]
all_imgs.append(i)
# 调用函数
write_img(all_imgs)
if __name__ == '__main__':
main()[/color]
[color=#000000]# 网址就不放了大伙看看我这码写的有哪些需要改进的地方,第一个地方我知道了就是把代码全写主函数里面了这样不好,明个在封装一下[/color]
[color=#000000]#还有就是写的过程实在是太恶心了,大伙不懂得留言我给你们说啊
|
免费评分
-
查看全部评分
|
发帖前要善用【论坛搜索】功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。 |
|
|
|
|