2013-12-18 3 views
0

Попытка использовать аргумент method, как видно here, дает следующую ошибку.urllib.request.Request - неожиданный аргумент ключевого слова 'method'

Python 3.2.3 (default, Sep 25 2013, 18:22:43) 
>>> import urllib.request as r 
>>> r.Request('http://example.com', method='POST') 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
TypeError: __init__() got an unexpected keyword argument 'method' 
>>> 

Независимо от того, где и где я ищу, я не могу найти решение моей проблемы.

ответ

3

Вы просматриваете документы для Python 3.3, но запускаете Python 3.2. В Python 3.2 Request инициализатор не имеет method аргумента: http://docs.python.org/3.2/library/urllib.request.html#urllib.request.Request

FWIW в зависимости от того, какой просьбы вы делаете (например, если запрос включает в себя корпус) urllib будет автоматически использовать соответствующий метод (т.е. POST). Если вам нужно сделать более специализированный тип запроса, например HEAD, вам нужно копать немного глубже. На SO есть другие ответы, которые помогают в этом.

+1

Ах, я не видел, чтобы '3.3.3' был выбран в верхней части страницы документа. Благодаря! –

Смежные вопросы