извлекать данные из веб-файла .txt (как ключ, набор значений) в словарь - PullRequest
0 голосов
/ 27 июня 2019

Мне нужно скачать содержимое файла .txt из Интернета, отделить каждый ключ, набор значений и вставить их в словарь.

Вот файл txt, где мои параметры должны быть помещены в dict->http://mign.pl/ver.txt

и dict должны выглядеть следующим образом: dic = {"Version": 1.0, "Hires": False, "Temperature": 55, "Description": "some description"}

Я уже использовал urllib2 для загрузки контента:

import urllib.request as urllib2 
url = urllib2.urlopen('http://www.mign.pl/ver.txt')

Что дальше?

Ответы [ 2 ]

1 голос
/ 27 июня 2019

попробуйте это:

import urllib.request as urllib2
url = urllib2.urlopen('http://www.mign.pl/ver.txt')
d1={}
x=url.read().decode("utf-8")
d=x.split("\n")
for i in d:
    z=i.split("=")
    d1[str(z[0])]=z[1]
print(d1)

выход:

{'Version ': ' 1.0', 'Hires ': ' False', 'Description ': ' Some description', 'Temperature ': ' 55'}
1 голос
/ 27 июня 2019

Вы можете использовать встроенный модуль configparser для анализа значений ( doc ):

import configparser
import urllib.request as urllib2

data = urllib2.urlopen('http://www.mign.pl/ver.txt')

c = configparser.ConfigParser()
c.read_string('[root]\n' + data.read().decode('utf-8'))
print({k:v for k, v in zip(c['root'], c['root'].values())})

Отпечатки:

{'version': '1.0', 'hires': 'False', 'temperature': '55', 'description': 'Some description'}

Или просто работатьнапрямую с connfigparser (например, print(c['root']['version']) выведет 1.0)

...