如何在 HTTP 请求中使用 Pandas DF 作为参数

佩利德

我有一个来自 excel 文件的地点列表,我会用 geonames Id 来丰富它。从excel文件开始,我制作了一个pandas数据框,然后我将使用DF中的值作为我请求中的参数。这是我制作的脚本

import pandas as pd 


import requests
import json


require_cols = [1] 


required_df = pd.read_excel('grp.xlsx', usecols = require_cols) 

print(required_df)

url = 'http://api.geonames.org/searchJSON?'

params = {  'username': "XXXXXXXX",

            'name_equals': (required_df),

            'maxRows': "1"}

e = requests.get(url, params=params)

pretty_json = json.loads(e.content)
print (json.dumps(pretty_json, indent=2))

问题与这个参数的定义有关:


 'name_equals': (required_df)

我会使用 DF 中的 Places(大约 15k)作为参数并递归检索相关的 geonames ID 并将输出写入单独的 excel 文件中。

简单的请求有效:

import requests
import json

url = 'http://api.geonames.org/searchJSON?'

params = {  'username': "XXXXXXX",

            'name_equals': "Aire",

            'maxRows': "1"}

e = requests.get(url, params=params)

pretty_json = json.loads(e.content)
print (json.dumps(pretty_json, indent=2))
#print(e.content)

以及 Pandas 数据框的定义:

# import pandas lib as pd 
import pandas as pd 

require_cols = [0,1] 

# only read specific columns from an excel file 
required_df = pd.read_excel('grp.xlsx', usecols = require_cols) 

print(required_df) 

我也尝试通过SPARQL没有结果,所以我决定通过 Python。

谢谢你的时间。

简单的

您可以使用for-loop

import pandas as pd

df = pd.DataFrame({'Places': ['London', 'Paris', 'Berlin']})

for item in df['Places']:
    print('requests for:', item)
    # ... rest of code ...

或者 df.apply()

import pandas as pd

def run(item):
    print('requests for:', item)
    # ... rest of code ...
    return 'result for ' + item

df = pd.DataFrame({'Places': ['London', 'Paris', 'Berlin']})

df['Results'] = df['Places'].apply(run)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在使用 AJAX 作为 HTTP 请求传递的 Python Flask 中接收对象数组作为参数?

如何在HTTP请求中将JSON作为查询参数传递?

如何在Java中使用Post参数发送简单的HTTP Post请求

如何在多部分请求中将图像文件作为 http 正文参数(POST)传递

如何在http.Get请求中使用双引号和冒号作为查询字符串?

如何使用参数(http请求)作为条件进行查询-语法错误:意外的“ <”

如何在Angular 4中使用多个Http请求

如何在Wordpress插件中使用php发出HTTP请求?

如何在nifi中使用invoke HTTP执行GET请求?

如何在pandas df列的条件子集的endswith()中使用正则表达式?

如何在 Pandas DataFrame 中使用列值作为标题

如何通过在同一列中使用keep参数first和Last删除pandas df列中的重复值

如何在 crontab 中使用文件内容作为参数

如何在函数中使用 dir() 作为默认参数

如何在新对象中使用参数作为键?

如何在方法中使用获取的数据作为参数

如何在抽象方法中使用通用EnumMap作为参数

如何在扩展方法中使用函数作为参数?

如何在布尔方法中使用PrintWriter作为参数

如何在函数中使用函数作为参数?

如何在switch语句中使用cin“作为参数”

如何在Python中使用Lambda作为日期时间参数

如何在 gmock 中使用参数作为返回值

如何在argargse中使用lambda作为参数?

如何在函数中使用AngularJS值作为参数?

如何在脚本中使用字符+,-,x,/作为参数

如何在 VBA 中使用 VLookup 作为范围参数?

如何在ruby中使用方法参数作为变量

将http请求作为参数传递