HTTP Post может иметь несколько параметров, например:
http://example.com/controller/ (while params = ({'country': 'US'}, {'city': 'NYC'})
Я занимаюсь разработкой веб-паука на Python, и у меня возникла проблема, как отследить разницу с одним и тем же URL-адресом с разными параметрами. Теперь я могу загрузить контент, , но я не знаю, как сохранить параметры сообщенияв поле таблицы SQLite3. Легко хранить параметры в базе данных, такой как MySQL, для разработчика системы, но поскольку параметры разных сайтов различны. Я предпочитаю хранить параметры записи в одном поле, а не в одном.сопоставление отношений один в таблице.
HTTP GET
>>> import urllib
>>> params = urllib.urlencode({'spam': 1, 'eggs': 2, 'bacon': 0})
>>> f = urllib.urlopen("http://www.musi-cal.com/cgi-bin/query?%s" % params)
>>> print f.read()
HTTP POST
>>> import urllib
>>> params = urllib.urlencode({'spam': 1, 'eggs': 2, 'bacon': 0})
>>> f = urllib.urlopen("http://www.musi-cal.com/cgi-bin/query", params)
>>> print f.read()
Конфигурация моего проекта:
- Python + SQLite3
- Хранить URL-адреса http и отправлять параметры и отслеживать изменения.
- Параметр post содержит несколько пар ключ-значение
- Сохраненные параметры следует декодировать обратно в параметры.
- Проблемы кодирования должны быть рассмотрены.
Я видел несколько решений, таких как JSON, XML и YAML.Я предполагаю, что этот формат на самом деле хранится как строковый (CHAR) тип в SQLite, в UTF-8.Но я понятия не имею, есть ли какой-нибудь удобный способ преобразовать их обратно в тип кортежа Python?Или я могу закодировать параметры записи в параметры получения с помощью + и & symbal и декодировать их обратно в параметры публикации?
Извините, я просто новичок в Python.