准备工作
1、python 3.7的 编程环境(下载了pymssql库,这个库用pip install可能会报错,可以直接到 https://www.lfd.uci.edu/~gohlke/pythonlibs/ 下载相应的whl文件)
2、如何设置sqlserver的相关属性让python能够连接 这个比较详细
3、requests库的安装
代码展示
import requests
import json
import pymssql
def get_content(url):
r = requests.get(url)
r.encoding = "utf-8"
mylist=json.loads(r.text[26:len(r.text)-2])
#print(type(mylist))
mylist2=[]
for list in mylist:
日期=list["date"]
新增确诊=list["confirm_add"]
确诊=list["confirm"]
治愈=list["heal"]
死亡=list["dead"]
mylist2.append((日期,新增确诊,确诊,治愈,死亡))
return mylist2
def save_info(mylist,country):
connect = pymssql.connect('JIAZHE-PC', 'jiazhe', 'jiazhe', 'Study3') # 服务器名,账户,密码,数据库名
if connect:
cursor=connect.cursor()
cursor.execute("create table "+country+" (count char(20),date1 char(20),confirm_add char(20),confirm char (20),heal char (20),dead char (20),)") # 执行sql语句
count=1
for list in mylist:
print(count,list[0],list[1],list[2],list[3],list[4])
cursor.execute("INSERT INTO "+country+" (count,date1,confirm_add,confirm,heal,dead) VALUES "+"( "+str(count)+","+str(list[0])+","+str(list[1])+","+str(list[2])+","+str(list[3])+","+str(list[4])+" )")
count=count+1
connect.commit() # 提交
print('操作成功')
cursor.close()
connect.close()
if __name__ == '__main__':
str1 = input("请输入你想要获取信息的国家:")
save_info(get_content("https://api.inews.qq.com/newsqa/v1/automation/foreign/daily/list?country=" + str1),str1)
输入国家:英国之后打开数据库
可以看到我们爬取到的数据已经存入到了数据库之中。这里的爬取的网站是https://api.inews.qq.com/newsqa/v1/automation/foreign/daily/list?country=
等于号后面加上你想要的国家就可以获得相应国家的数据了。
加油,奥利给!!!!!