[英]Python DataFrames has a concat or append problem
我的专业不是编程或编码。 但是在工作中与Python有关,我必须这样做。 我一个人学习了一个月,做了这段代码,但我想把它改成正确的循环结构。 我该怎么做?
附加问题:如果我收到 XML 形式的数据,我应该如何编码?
import urllib.request
import json
import pandas as pd
import datetime
Host = "https://oapi.saramin.co.kr/job-search?access-key=L8ILhlpIElsdz7BvhWQxcON3g8WBCSRyPTBEY7qlitt5ksdVBV6"
headers = { Host: "oapi.saramin.co.kr", "Accept": "application/json"}
for i in range(0, 10) :
pages = i + 1
url = Host + "&start=" + str(pages) + "&count=110"
response = urllib.request.urlopen(url)
json_str = response.read().decode("utf-8")
json_object = json.loads(json_str)
globals()['mark{}'.format(i)] = pd.json_normalize(json_object['jobs']['job'])
df0=pd.DataFrame(mark0)
df1=pd.DataFrame(mark1)
df2=pd.DataFrame(mark2)
df3=pd.DataFrame(mark3)
df4=pd.DataFrame(mark4)
df5=pd.DataFrame(mark5)
df6=pd.DataFrame(mark6)
df7=pd.DataFrame(mark7)
df8=pd.DataFrame(mark8)
df9=pd.DataFrame(mark9)
df_all = pd.concat([df0, df1, df2, df3, df4, df5, df6, df7, df8, df9])
today_string = datetime.datetime.now().strftime('%y.%m.%d_%Hh%Mm%Ss')
df_all.to_excel('Saramin_Raw_Data(' + today_string + ').xlsx')
您可以尝试以下代码:-
import urllib.request
import json
import pandas as pd
import datetime
Host = "https://oapi.saramin.co.kr/job-search?access-key=L8ILhlpIElsdz7BvhWQxcON3g8WBCSRyPTBEY7qlitt5ksdVBV6"
headers = { Host: "oapi.saramin.co.kr", "Accept": "application/json"}
df_list = list()
NUM_FILES = 3
for i in range(0, NUM_FILES+1) :
pages = i + 1
url = Host + "&start=" + str(pages) + "&count=110"
response = urllib.request.urlopen(url)
json_str = response.read().decode("utf-8")
json_object = json.loads(json_str)
mark = pd.json_normalize(json_object['jobs']['job'])
df = pd.DataFrame(mark)
df_list.append(df)
df_all = pd.concat(df_list)
today_string = datetime.datetime.now().strftime('%y.%m.%d_%Hh%Mm%Ss')
df_all.to_excel('Saramin_Raw_Data(' + today_string + ').xlsx')
您必须设置NUM_FILES = 900
的值
我希望这有帮助!!
关于您的其他问题,您可以关注这篇不错的中等文章:- https://medium.com/@robertopreste/from-xml-to-pandas-dataframes-9292980b1c1c
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.