Пользователь пока ничего не рассказал о себе

Наибольший вклад в теги

Все теги (13)

Лучшие ответы пользователя

Все ответы (10)
  • Вот index out of range при переводе слова из файла?

    @ElefanObi
    Чтобы прочитать слово из файла, надо применить readlines(). Print() не нужен, потому что функция не возвращает ответ, а печатает его сама.
    with open('1word.txt', 'r') as f:
        for line in f.readlines():
            ya_dict (line.strip())

    strip() нужен чтобы удалить знаки переноса строки.
    text = word_tr бессмысленная строка. Или сразу называйте переменную text или передавайте в ссылку word_tr.
    eval() не нужен. Он выполняет код, переданный ему в виде строки. Например:
    eval('print("text")')
    напечатает text, как будто 'print("text")' не строковая переменная, а команда.
    После строки содержащей uri = лучше написать так:
    r = requests.post(uri)  # делаем запрос к яндексу
    data = json.loads(r.text)  # конвертируем строку json в словарь
    word_list = data["def"][0]["tr"]  # получаем список
    for word in word_list:
        print(word["text"])

    Цикл forперебирает все элементы списка и получает из каждого полученного словаря значение с ключем 'text'.
    Саму строку с uriлучше написать так:
    uri = 'https://dictionary.yandex.net/api/v1/dicservice.json/lookup?key={}&lang={}&text={}'.format(yandexkey, lang, text)

    Тогда не получите ошибку Invalid syntax.
    Увидеть какой должен прийти результат можно здесь.
    Код я не тестировал, потому что у меня нет api ключа, но надеюсь сейчас уже проще будет разобраться что происходит.
    Ответ написан
    Комментировать
  • Парсинг сайтов xpath?

    @ElefanObi
    http://программисту.рф/theory/xpath-example/
    Потренироваться с xpath можно в браузере Chrome с помощью расширения XPath Helper.
    Ответ написан
    Комментировать

Лучшие вопросы пользователя

Все вопросы (12)