小编Pab*_*rdo的帖子

使用python解析JSON:空白字段

我在使用python解析JSON时遇到了问题,现在我被卡住了.
问题是我的JSON实体并不总是一样的.JSON是这样的:

"entries":[
{
"summary": "here is the sunnary",
"extensions": {
   "coordinates":"coords",
   "address":"address",
   "name":"name"
   "telephone":"123123"
   "url":"www.blablablah"
},
}
]
Run Code Online (Sandbox Code Playgroud)

我可以通过JSON,例如:

for entrie in entries:
  name =entrie['extensions']['name']
  tel=entrie['extensions']['telephone']
Run Code Online (Sandbox Code Playgroud)

问题来了,因为有时,JSON没有所有"字段",例如,telephone字段,有时会丢失,因此,脚本失败KeyError,因为此条目中缺少关键电话.
所以,我的问题是:我怎么能运行这个脚本,留下一个缺少电话的空白区域?我尝试过:

if entrie['extensions']['telephone']:
    tel=entrie['extensions']['telephone']
Run Code Online (Sandbox Code Playgroud)

但我认为不行.

python parsing json python-2.7

10
推荐指数
2
解决办法
1万
查看次数

使用python在postgres中复制(来自)带有heades的csv

我正在尝试用python脚本中的CSV文件填充表格.

随后的SQL语句运行时没有错误:

COPY registro
FROM '/home/pablo/Escritorio/puntos/20140227.csv'
DELIMITER ','
CSV header;
Run Code Online (Sandbox Code Playgroud)

CSV具有标题,并使用header参数,导入时没有错误.

当我从我的python脚本执行它时,问题出现了.我发现不尝试导入标题的唯一方法是使用copy_expert()方法.我没有收到任何错误消息,但是在我运行下面的Python脚本后,表仍然是空的.

任何可能的线索?或者也许用其他任何方式从带有标题的CSV复制表格?

谢谢.

#/usr/bin/env python
# -*- coding: utf-8 -*-
import psycopg2
import os
import glob
DSN = "dbname=gps user=postgres host=localhost"
con = psycopg2.connect(DSN)
cur = con.cursor()
my_file = open('/home/pablo/Escritorio/puntos/20140227.csv')
#This is only a test file, not all the directory
sql = "COPY registro FROM stdin DELIMITER \',\' CSV header;"
cur.copy_expert(sql, my_file)
cur.close()
con.close()
Run Code Online (Sandbox Code Playgroud)

python sql csv postgresql psycopg2

6
推荐指数
2
解决办法
1万
查看次数

Postgres服务器没有听

我正在尝试连接我的客户端(Macbook Pro)到位于同一网络中另一台PC的Postgres数据库(Ubuntu)我可以通过pgAdmin从主机看到数据库,连接到localhost,但是我看不到客户端.

我允许所有的连接pg_hba.confpostgresql.conf

我正在尝试通过pgAdmin从客户端连接到存储数据库的IP服务器(192.168.1.34)和端口5432

在此输入图像描述 我得到了这个错误 在此输入图像描述 我做错了什么?

我错过了什么

看完建议后,我可以说:在ubuntu机器上(家庭测试服务器),我没有防火墙.Postgres正在运行.

我已经尝试从ubuntu控制台访问数据库: psql -h 127.0.0.1 mydatabase postgres并且可以连接(这意味着服务器正在运行,用户名就可以了)但是如果我尝试从同一台机器访问同一个数据库,则用IP更改localhost ,我无法连接.我应该从服务器连接时不psql -h 127.0.0.1 mydatabase postgres一样psql -h 192.168.1.34 mydatabase postgres

阿兰建议,也许是在环回中?

postgresql remote-access pgadmin

6
推荐指数
3
解决办法
3万
查看次数

使用 RESTSharp C# 反序列化 JSON

我正在尝试在 Xamarin 应用程序中反序列化 JSON。我已经阅读了很多关于,但仍然有问题,所以,也许这里有人可以提供帮助:

我的 JSON 响应是这样的:

{
    "Events":[
            {
                "id":7,
                "name":"show",
                "datefrom":"2012-01-01",
                "timeto":"12:00:00",
                "price":"3",
                "imagen":"null",
                "desc":"rock band playing",
                "info":"Info about tickets",
                "user":1,
                "place":9,
                "dateto":"2013-02-02",
                "timeto":"12:30:00",
                "Eventcategories":[]
            },
            {"id":2, name:...
Run Code Online (Sandbox Code Playgroud)

正如我所读到的,我创建了两个类,一个用于对象(事件),另一个用于 JSON 响应(事件响应),第二个类只有一个事件列表:

public class EventResponse
{
    public ObservableCollection<Event> Events { get; set; }
    public EventResponse(){
    }
    }
}
Run Code Online (Sandbox Code Playgroud)

并且 Event 类具有 JSON 返回的所有字段:

private int _id;
        public int id {   
            get { return _id; }
            set {

                _id = value;
                OnPropertyChanged ();
            }
        }

        private string _nombre;
        public string …
Run Code Online (Sandbox Code Playgroud)

c# json xamarin

5
推荐指数
2
解决办法
2万
查看次数

H3 六边形不匹配

我正在尝试将该polyfill函数与 Python 的h3实现结合使用,但收到了意想不到的结果。

如果我使用具有固定分辨率的函数,我可以获得并显示如上所示的多边形网格。 在此处输入图片说明

但是当我想创建一个更精确的网格时,比如 Uber 为文档制作的网格:

在此处输入图片说明

我得到了奇怪的结果。

我使用与之前相同的方法创建了网格,但精度更高 (12),然后使用该compact函数尽可能地对六边形进行分组。

hexagons = h3.polyfill(json_poly, 8, False)
hex_com = h3.compact(hexagons)
Run Code Online (Sandbox Code Playgroud)

结果是这样,我可以看到一些未被任何六边形覆盖的区域。

在此处输入图片说明

关于为什么会发生这种情况的任何线索?

我使用的方法有问题吗?

python geospatial geojson uber-api h3

5
推荐指数
1
解决办法
535
查看次数

Tweepy空白搜索

我一直在网上寻找答案,但我没有找到任何我认为可能是一个简单问题的东西:

有没有办法从tweepy获得"空白"搜索?

例如,从位置获取所有推文.

我无法发送没有查询字段的查询:

query=  tweepy.api.search(q="", rpp=1000)
Run Code Online (Sandbox Code Playgroud)

它返回:

tweepy.error.TweepError:您必须输入查询.

我正在寻找的是获取此查询,例如:

http://search.twitter.com/search.atom?geocode=38.376,-0.5,8km

从...获取所有推文

python twitter tweepy

4
推荐指数
1
解决办法
2428
查看次数