Skip to content
This repository has been archived by the owner on Oct 14, 2023. It is now read-only.

Проблема с парсингом русских тегов #47

Open
Ivanelgran opened this issue Apr 30, 2019 · 2 comments
Open

Comments

@Ivanelgran
Copy link

При попытке вызова функции get_media() с числом записей - 1000, для любого тега из кириллицы, например "#коты", выдает ошибку:
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/http/client.py", line 1212, in putheader
values[i] = one_value.encode('latin-1')
UnicodeEncodeError: 'latin-1' codec can't encode characters in position 33-35: ordinal not in range(256)

Проблема решилась изменение кодировки obj из utf-8 в url-encoded, в файле agents.py
Можно ли предусмотреть решение этой проблемы в будущих версиях, или я упустил уже существующее?)

@OlegYurchik
Copy link
Owner

Можно предусмотреть, сделайте, пожалуйста, pull request с Вашими изменениями, и прикрепите максимально возможную информацию об ошибке, мне это очень поможет!

@tapakeht
Copy link

Можно предусмотреть, сделайте, пожалуйста, pull request с Вашими изменениями, и прикрепите максимально возможную информацию об ошибке, мне это очень поможет!

referer="https://instagram.com/" + obj.base_url + getattr(obj, obj.primary_key),

В 140 строке необходимо добавить quote (предварительно импортировав from urllib.parse import quote):

referer="https://instagram.com/" + obj.base_url + quote(getattr(obj, obj.primary_key)),

Это касаемо get_media при использовании WebAgent() для поиска медиа по тегам.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants