import requests
import pymysql
conn = pymysql.connect(
host="localhost",
port=3306,
user="root",
passwd="root",
db="spider",
charset="utf8"
)
cur = conn.cursor()
def get_json(index):
# 爬虫功能
url = "https://study.163.com/p/search/studycourse.json"
payload = {
"activityId": 0,
"keyword": "python",
"orderType": 5,
"pageIndex": index,
"pageSize": 50,
"priceType": -1,
"qualityType": 0,
"relativeOffset": 0,
"searchTimeType": -1,
}
headers = {
"accept": "application/json",
"content-type": "application/json",
"origin": "https://study.163.com",
"user-agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.70 Safari/537.36"
}
try:
response = requests.post(url, json=payload, headers=headers)
content = response.json()
if content and content["code"] == 0:
return content
return None
except:
print("出错了")
def get_course(content):
course_list = content["result"]["list"]
return course_list
def save_to_mysql(course_list):
course_data = []
for item in course_list:
course_value = (
0, item["courseId"], item["productName"], item["provider"], item["score"],
item["learnerCount"], item["lectorName"], item["originalPrice"],
item["discountPrice"], item["imgUrl"], item["bigImgUrl"], item["description"]
)
course_data.append(course_value)
string_s = ('%s,' * 12)[:-1]
sql_course = f"insert into course values ({string_s})"
cur.executemany(sql_course, course_data)
def main(index):
content = get_json(index) # 获取json数据
course_list = get_course(content) # 获取第index页的50条件记录
save_to_mysql(course_list) # 写入到excel
if __name__ == "__main__":
print("开始执行")
total_page_count = get_json(1)["result"]["query"]["totlePageCount"] # 总页数
for index in range(1, total_page_count + 1):
main(index)
cur.close()
conn.commit()
conn.close()
print("执行结束")
Python 爬取在线课程并有存入MySQL数据库 Python源码
版权申诉
130 浏览量
2023-10-22
20:37:38
上传
评论
收藏 2KB ZIP 举报
douluo998
- 粉丝: 1846
- 资源: 5197
最新资源
- 农村信用社联合社计算机信息系统投产与变更管理办.docx
- 农村信用社联合社计算机信息系统数据管理办法.docx
- 利用SPSS作临床效度分析线上计算网站介绍-医学研究部统计谘.(医学PPT课件).ppt
- 利用Zabbix监控mysqldump定时备份数据库状态.docx
- 利用计算机解决问题的基本过程.doc
- 化工铁路通信工程总结.doc
- 北京大学网络教育软件工程作业.docx
- 医药公司(连锁店)计算机操作规程未新系统的自行按照旧制修改-新系统过制的编号加修模版.doc
- 医药公司(连锁店)计算机系统操作规程模版.doc
- 医药连锁门店计算机系统的操作和管理程序未新系统的自行按照旧制修改-新系统过制的编号加修模版.docx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈