Facebook передает неверные данные в базу данных - PullRequest
0 голосов
/ 10 мая 2018

Мне нужна помощь в создании приложения, которое позволило бы мне хранить общедоступные данные facebook в базе данных, используя python3, и все данные, полученные с Facebook, превратились в странные строки Weird String вместо значения, отображаемого в выводе Python enter image description here

Мой код

host = "https://graph.facebook.com/v3.0"
path = "/me"
params = urllib.parse.urlencode({
"access_token": ACCESS_TOKEN
})

url = "{host}{path}?{params}".format(host = host, path = path, params = 
params)
print(url)
resp = urllib.request.urlopen(url).read()

print(resp)

    params = urllib.parse.urlencode({
"fields": 'name',
"access_token": ACCESS_TOKEN
})
url = "{host}{path}?{params}".format(host = host, path = path, params = 
params)
uName = urllib.request.urlopen(url).read()
pprint.pprint(uName)


params = urllib.parse.urlencode({
"fields": 'id',
"access_token": ACCESS_TOKEN
})
url = "{host}{path}?{params}".format(host = host, path = path, params = 
params)
uId = urllib.request.urlopen(url).read()
pprint.pprint(uId)


cur.execute(""
"
insert into COMPANY(ID, NAME, AGE, ADDRESS, SALARY, STRING) VALUES( % s, % 
s, % s, % s, % s, % s)
""
", (temp_id,uName,age,address,salary,uId,))
conn.commit() conn.close()

1 Ответ

0 голосов
/ 10 мая 2018

Обратите внимание, что в выходных данных Python uName фактически является двоичными данными (b'stuff' означает двоичные данные) и фактически является JSON.

Вам нужно расшифровать его, чтобы получить текст

uName = uName.decode('utf-8')

И затем, если вам нужно, декодируйте JSON .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...