Перестраивая колесо для API YouTube с Python, я обнаружил, что могло вызвать неузнаваемость X-GData-Key
. Это ответы @Javierfdr.
Краткий ответ: urllib2
выполняет .capitalize()
и .title()
и портит заголовки.
В модуле urllib2
имеется множество таких кодов. Некоторые в обработчиках, а некоторые в Request
. X-GData-Key
преобразуется в X-Gdata-Key
( с названием , обратите внимание на нижний d ) или X-gdata-key
(когда пишется с заглавной буквы ). Мне пришлось создать собственный HTTPSHandler и объект Request, чтобы закомментировать строки.
Я не уверен, почему они это делают, но длинная ветка рассказывает об этой проблеме в http://bugs.python.org/issue2275. Я думаю, что это не дошло до Python 2.7.
Я опробовал библиотеку запросов , и она не перепутала ее с заголовками. Ура :))
Просто чтобы другие не тратили впустую свое время или хотя бы имели представление о том, что происходит.
- редактировать -
На самом деле, я обнаружил, что RFC утверждает, что имена полей заголовка нечувствительны к регистру, и я не смог найти никаких доказательств того, что Google не делает. Я ошибся в приведенном ниже утверждении, у меня все еще нет статистики :( Извините, что ввел в заблуждение.
После изменения всех этих параметров я наконец-то увидел статистику в YouTube API
Панель инструментов - всегда удивлялся, почему до сих пор не было данных.