def main():
url = "https://data.stats.gov.cn/easyquery.htm?cn=C01&zb=A0C06&sj=2020"
askURL(url)
def askURL(url):
head = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36"
}
request = urllib.request.Request(url,headers=head)#,verify=False
html = ""
try:
response = urllib.request.urlopen(request)
html = response.read().decode("utf-8")
# print(html)
except urllib.error.URLError as e:
if hasattr(e,"code"):
print(e.code)
if hasattr(e,"reason"):
print(e.reason)
return html
if __name__ == "__main__":
main()
result = open('result.html', 'r',encoding='utf-8')
# data = re.findall(r"\"engine_search_result\":(.+?),\"jobid_count\"", str(result.readlines()))
# data = re.findall(r"\"nodes\":(.+?),\"wdcode"", str(result.readlines()))
data_wd = re.findall(r"\"nodes\":(.+?),\"wdcode\"", str(result.readlines()))
# print(data)
# s = data[0].replace('\\', '\\\\')
jsonObj_wd = json.loads(data_wd[0])
# print(jsonObj)
row0 = []
for item in jsonObj_wd:
content0 = item['cname'] +'('+ item['unit']+')'
row0.append([content0])
# print(row0)
with open("生活垃圾0.csv",'w',newline='') as t: # numline是来控制空的行数的
writer = csv.writer(t) # 这一步是创建一个csv的写入器
# writer.writerow(b) # 写入标签
writer.writerows(row0) # 写入样本数据
# result.close()
result_data = open('result_data.html', 'r',encoding='utf-8')
data_data = re.findall(r"\"datanodes\":(.+?),\"freshsort\"", str(result_data.readlines()))
# print(data_data)
# s = data[0].replace('\\', '\\\\')
jsonObj_data = json.loads(data_data[0])
# print(jsonObj_data)
row1 = []
for item in jsonObj_data:
content1 = item['data']['strdata']#+'('+ item['unit']+')'
row1.append([content1])
print(row1)
# with open("生活垃圾1.csv",'w',newline='') as t: # numline是来控制空的行数的
# writer = csv.writer(t) # 这一步是创建一个csv的写入器
# # writer.writerow(b) # 写入标签
# for i in range(1,len(row1)+1):
# if i%10==0:
# writer.writerows(list(map(list, zip(*row1)))) # 写入样本数据
# # writer.writerows(['\n'])
with open("生活垃圾1.csv", 'w', newline='') as t: # numline是来控制空的行数的
writer = csv.writer(t) # 这一步是创建一个csv的写入器
# writer.writerow(b) # 写入标签
writer.writerows(row1) # 写入样本数据
#
# result_data.close()