首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >到Pandas DataFrame的IP2Location记录

到Pandas DataFrame的IP2Location记录
EN

Stack Overflow用户
提问于 2021-01-30 23:14:07
回答 1查看 75关注 0票数 1

我曾使用IP2Location收集有关IP地址的信息,我想将其放在DataFrame中,但当我尝试使用pd.json_normalize(ip)时,我得到了一个错误。AttributeError: 'IP2LocationRecord' object has no attribute 'values'

我从IP2Location得到的信息是这样的格式,

{'ip': '66.249.79.244', 'country_short': 'US', 'country_long': 'United States of America', 'region': 'California', 'city': 'Mountain View', 'latitude': 37.405991, 'longitude': -122.078514, 'zipcode': '94043', 'timezone': '-08:00'}

我也尝试过使用pd.DataFrame,但df中的结果为空,只能看到列名。

df = pd.DataFrame(ip, columns = ['ip','country_short','country_long','region','city','latitude','longitude','zipcode','timezone'])

预期结果

代码语言:javascript
复制
     ip               country_short    country_long        ....       zipcode      timezone
0    66.249.69.244    US               United States of America       94043        -08:00
EN

回答 1

Stack Overflow用户

发布于 2021-01-31 00:05:42

请注意错误:

AttributeError: 'IP2LocationRecord' object ...

您要做的是将IP2LocationRecord类型的对象转换为pandas.DataFrame,这不是直接可能的(您必须直接解压所有值,或者使用IP2LocationRecord的字段创建一个字典)。您在这里看到的内容:

代码语言:javascript
复制
{'ip': '66.249.79.244', 'country_short': 'US', 'country_long': 'United States of America', 'region': 'California', 'city': 'Mountain View', 'latitude': 37.405991, 'longitude': -122.078514, 'zipcode': '94043', 'timezone': '-08:00'}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65969597

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档