繁体   English   中英

python:urllib2.HTTPError:HTTP错误405:不允许的方法

[英]python: urllib2.HTTPError: HTTP Error 405: Method Not Allowed

我真的是一个尝试学习Python的ETL专家,请帮助

import urllib2
urls =urllib2.urlopen("url1","url2")
i=0
while i< len(urls):
  htmlfile = urllib2.urlopen(urls[i])
  htmltext = htmlfile.read()
  print htmltext
  i+=1

我收到错误

追溯(最近一次通话最后一次):文件“。\\ test.py”,第2行,网址= urllib2.urlopen(“ url1”,“ url2”)文件“ c:\\ python27 \\ Lib \\ urllib2.py”,行154,在urlopen中返回opener.open(URL,数据,超时)文件“ c:\\ python27 \\ Lib \\ urllib2.py”,第437行,在打开时的响应= meth(req,response)文件“ c:\\ python27 \\ Lib \\ urllib2.py”,第550行,位于http_response'http',请求,响应,代码,msg,hdrs)文件“ c:\\ python27 \\ Lib \\ urllib2.py”,第475行,错误返回self._call_chain(* args)_call_chain中的文件“ c:\\ python27 \\ Lib \\ urllib2.py”,第409行= func(* args)http_error_default中的文件“ c:\\ python27 \\ Lib \\ urllib2.py”,行558引发HTTPError( req.get_full_url(),代码,msg,hdrs,fp)urllib2.HTTP错误:HTTP错误405:不允许的方法

您的错误来自第2行:

urls =urllib2.urlopen("url1","url2")

您尝试访问的任何URL都会返回http错误代码

HTTP Error 405: Method Not Allowed

查看urllib2文档,您应该只使用1个url作为参数

https://docs.python.org/2/library/urllib2.html

打开URL URL,它可以是字符串或Request对象。

data可以是一个字符串,用于指定要发送到服务器的其他数据;如果不需要,则为None。 当前,HTTP请求是唯一使用数据的请求。 提供data参数时,HTTP请求将是POST而不是GET。

您输入的第二个参数可能是将请求转换为POST,这将解释“方法不允许”代码。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM