#coding=utf-8
import requests,json,time,pymysql,os
def db_connet():
global db,cursor
db = pymysql.connect(host='localhost',
user='xxxx',
password='xxxx',
database='xxx')
cursor = db.cursor() # 使用 cursor() 方法创建一个游标对象 cursor
#cursor.execute("SELECT VERSION()") # 使用 execute() 方法执行 SQL 查询
#data = cursor.fetchone() # 使用 fetchone() 方法获取单条数据
#print("Database version : %s " % data)
#db.close() # 关闭数据库连接
def middle_high():
url = "https://eyesight.news.qq.com/sars/riskarea?callback=jQuery35105353789618760572_1638337103000&_=1638337103001"
url_text = requests.get(url).text
url_text = url_text.replace("jQuery35105353789618760572_1638337103000(","").replace(")","")
cao = json.loads(url_text)["data"]
cursor.execute("truncate table RiskArea") # 执行清空表
for i in cao:
location = dict(i)
if location["type"] == '1':
#print("中风险地区:"+location["area"])
#gao.append("中风险地区:"+location["area"])
sql = "INSERT INTO RiskArea(area,risk) \
VALUES ('%s', '%s')" % (location["area"],location["type"])
cursor.execute(sql)
db.commit()
elif location["type"] == '2':
#print("高风险地区:" + location["area"])
#gao.append("高风险地区:" + location["area"])
sql = "INSERT INTO RiskArea(area,risk) \
VALUES ('%s', '%s')" % (location["area"], location["type"])
cursor.execute(sql)
db.commit()
def low():
url2 = "https://api.inews.qq.com/newsqa/v1/query/inner/publish/modules/list?modules=statisGradeCityDetail"
url2_text = requests.get(url2).text
cao2 = json.loads(url2_text)["data"]
cursor.execute("truncate table low_risk") # 执行清空表
for i in cao2["statisGradeCityDetail"]:
#print(i["province"],i["city"],i["grade"],i["date"])
sql = "INSERT INTO low_risk(province,area,risk,time) \
VALUES ('%s', '%s','%s','%s')" % (i["province"],i["city"],i["grade"],i["date"])
cursor.execute(sql)
db.commit()
def china(): #国内疫情最新动态
url = "https://opendata.baidu.com/data/inner?tn=reserved_all_res_tn&dspName=iphone&from_sf=1&dsp=iphone&resource_id=28565&alr=1&query=%E5%9B%BD%E5%86%85%E6%96%B0%E5%9E%8B%E8%82%BA%E7%82%8E%E6%9C%80%E6%96%B0%E5%8A%A8%E6%80%81&cb=jsonp_1638431144029_71210"
url_text = requests.get(url).text
url_text = url_text.replace("jsonp_1638431144029_71210(","").replace(")","")
url_text = json.loads(url_text)["Result"]
cursor.execute("truncate table news") # 执行清空表
for i in url_text:
#print(i)
i = eval(json.dumps(i["DisplayData"]["result"]["items"]))
for ii in i:
times = time.localtime(int(ii["eventTime"]))
#print(ii["eventDescription"])
#print(ii["eventUrl"])
#print(ii["siteName"])
#print(type(time.strftime("%Y-%m-%d %H:%M:%S", times)))
#print(ii["eventDescription"], time.strftime("%Y-%m-%d %H:%M:%S", times),ii["eventUrl"],ii["siteName"])
sql = "INSERT INTO news(title,time,referer,url) \
VALUES ('%s', '%s','%s','%s')" % (ii["eventDescription"],time.strftime("%Y-%m-%d %H:%M:%S", times),ii["siteName"],ii["eventUrl"])
cursor.execute(sql)
db.commit()
def outhe(): #国外疫情最新动态
url = "https://opendata.baidu.com/data/inner?tn=reserved_all_res_tn&dspName=iphone&from_sf=1&dsp=iphone&resource_id=28565&alr=1&query=%E5%9B%BD%E5%A4%96%E6%96%B0%E5%9E%8B%E8%82%BA%E7%82%8E%E6%9C%80%E6%96%B0%E5%8A%A8%E6%80%81&cb=jsonp_1638431144030_90807"
def new_info():
notice = "https://view.inews.qq.com/g2/getOnsInfo?name=wuwei_ww_ww_today_notice&callback=jQuery35105067497180459282_1638497684075&_=1638497684076"
notice_text = requests.get(notice).text.replace("jQuery35105067497180459282_1638497684075(","").replace(")","")
notice_text = json.loads(notice_text)["data"]
notice_text = eval(notice_text)
cursor.execute("truncate table Newinfo") # 执行清空表
for i in notice_text:
#print(i["showNotice"])
sql = "INSERT INTO Newinfo(notice) VALUES ('%s')" % (i["showNotice"])
cursor.execute(sql)
db.commit()
if __name__ == '__main__':
db_connet()
try:
middle_high()
low()
china()
new_info()
except:
os.system("echo error > /root/python_error")
db.close()
Comments NOTHING