2015-02-09 6 views
2

Я пытаюсь порт следующего завитка вызова в питоном скрипт, используя URLLIB/urllib2: завитка -H "X-Апи-Key: ccccccccccccccccccccccc" -H "X-Api-секрет: cbcwerwerwerwerwerwerweweewr9" https://api.assembla.com/v1/users/user.xmlпитона локон для Assembla

Я попытался с помощью стандартного вызова URL-адрес, но это не удалось:

url_assembla = 'https://api.assembla.com/v1/users/suer.xml' 
base64string_assembla = base64.encodestring('%s:%s' %  ('ccccccccccccccccccccccc','cbcwerwerwerwerwerwerweweewr9')).replace('\n', '') 

req_assembla = urllib2.Request(url_assembla) 
req_assembla.add_header("Authorization", "Basic %s" % base64string_assembla) 
ET.parse(urllib2.urlopen(req_assembla)) 

Может ли один совет о том, как включить Api секретная и Апи-ключ. Я хочу сделать это как скрипт, поэтому не хотел устанавливать пакет сборки.

Благодаря

ответ

1

Если curl команда выше работ, вы, возможно, следует просто добавить те же заголовки в запросе urllib2?
Попробуйте вместо add_header("Authorization") линии:

req_assembla.add_header("X-Api-Key", 'ccccccccccccccccccccccc') 
req_assembla.add_header("X-Api-Secret", 'cbcwerwerwerwerwerwerweweewr9') 
+0

Спасибо. Это сработало. Я заметил, что скрипт python для urlopen занимает немного больше, чем Curl из cmd. Любые идеи почему? – tkansara

+0

@tkansara Добро пожаловать! К сожалению нет, я понятия не имею. Возможно, разбор его с помощью 'xml.etree' занимает некоторое время, если' suer.xml' довольно большой? Или это ошибка 'urlopen'? –

+0

@tkansara есть некоторые связанные вопросы по StackOverflow: 1) [Python urllib2.urlopen() медленный, нужен лучший способ прочитать несколько URL-адресов] (http://stackoverflow.com/questions/3472515/python-urllib2-urlopen -is-slow-need-a-better-way-to-read-несколько-urls) 2) [Как я могу ускорить выбор страниц с urllib2 в python?] (http://stackoverflow.com/questions/3490173/ how-can-i-speed-up-fetch-pages-with-urllib2-in-python) (хотя второй больше связан с потоками) –