Python YouTube Gdata API сломан после небольшого изменения - PullRequest
0 голосов
/ 08 декабря 2011

Я изменил способ, которым мой скрипт получал свой список, и каким-то образом сломал Gdata-API

sys.argv[1] - это текстовый файл URL, подобный этому

Ошибка начинается, когда я комментирую части 1 и 2 и добавляю 3. Когда я удаляю 3 и раскомментирую части 1 и 2, она снова работает.

Соответствующий код:

# PART 1 - parse bookmarks.html
#with open(sys.argv[1]) as bookmark_file:
#    soup = BeautifulSoup(bookmark_file.read())

# PART 2 - extract youtube video urls
#video_url_regex = re.compile('http://www.youtube.com/watch')
#urls = [link['href'] for link in soup('a', href=video_url_regex)]

# PART 3 - parse text file
urls = open(sys.argv[1]).readlines()

Ошибка, которую я получаю сейчас:

Traceback (most recent call last):
  File "listtest.py", line 81, in <module>
    comments = comments.total_results.text
AttributeError: 'NoneType' object has no attribute 'total_results'

Я бы хотел продолжить получать поле Всего комментариев. Спасибо.

Полный код: http://pastebin.com/1yZdEySW

РЕДАКТИРОВАТЬ: один URL в текстовом файле в порядке. Когда текстовый файл увеличивается до двух или более элементов, воспроизводится ошибка.

1 Ответ

1 голос
/ 08 декабря 2011

Я назначил URL:

urls = ['http://www.youtube.com/watch?v=_wmD3M-BfVo']

(Да, это музыкальное видео T-Pain) И это работало просто отлично. Скорее всего, у вас проблема с открываемым файлом или с разбором содержимого этого файла. Или вы просто не анализируете это правильно. В любом случае вы получаете комментарии, не назначенные ни одному, потому что вы не передаете действительные идентификаторы.

...