python爬虫田康林

时间:2023-03-09 19:04:13
python爬虫田康林
 

 代码如下
import requests
import json
import time
import os
from threading import Timer
def getHTML(url):
try:
r=requests.get(url,timeout=30)
r.raise_for_status()
r.encoding=r.apparent_encoding
datas=json.loads(r.text)['data']
except:
print('连接失败')
else:
result=""
for data in datas:
result+=str(data['StudentNo'])+','+data['RealName']+','+data['DateAdded'].replace('T',' ')+','+data['Title']+','+data['Url']+'\n'
f=open('F:\羊车门爬虫作业\hwlist.csv','w')
f.write(result)
f.close()
os.mkdir('F:\羊车门爬虫作业\hwFolder')
os.chdir('F:\羊车门爬虫作业\hwFolder')
for data in datas:
os.mkdir(str(data['StudentNo']))
os.chdir(str(data['StudentNo']))
try:
web=requests.get(data['Url'],timeout=30)
web.raise_for_status()
web.encoding=web.apparent_encoding
except:
print('连接失败')
else:
f=open(str(data['StudentNo'])+'.html','wb')
f.write(web.content)
f.close()
os.chdir(os.path.pardir)
url='https://edu.cnblogs.com/Homework/GetAnswers?homeworkId=2420&_=1543216235911'
if __name__=='__main__':
t=Timer(300,getHTML(url))
t.start()

第一部分:

请分析作业页面,爬取已提交作业信息,并生成已提交作业名单,保存为英文逗号分隔的csv文件。文件名为:hwlist.csv 。
文件内容范例如下形式:
学号,姓名,作业标题,作业提交时间,作业URL
20194010101,张三,羊车门作业,2018-11-13 23:47:36.8,http://www.cnblogs.com/sninius/p/12345678.html
20194010102,李四,羊车门,2018-11-14 9:38:27.03,http://www.cnblogs.com/sninius/p/87654321.html
*注1:如制作定期爬去作业爬虫,请注意爬取频次不易太过密集;
*注2:本部分作业用到部分库如下所示:
(1)requests —— 第3方库
(2)json    —— 内置库

文件内容范例如下形式:

 python爬虫田康林
在生成的 hwlist.csv 文件的同文件夹下,创建一个名为 hwFolder 文件夹,为每一个已提交作业的同学,新建一个以该生学号命名的文件夹,将其作业网页爬去下来,并将该网页文件存以学生学号为名,“.html”为扩展名放在该生学号文件夹中。
python爬虫田康林
python爬虫田康林
python爬虫田康林