使用python urllib2.open时出现HTTP 500错误

2 投票
3 回答
9603 浏览
提问于 2025-04-17 07:50

代码是这样的。这个网址是我的博客,我想获取并备份我的博客文章。其他的博客文章都能顺利获取,但这一篇却返回了500错误。

usock = urlopen("http://xiaoshuaistudio.ycool.com/post.4606754.html")
htmlSource = usock.read()
usock.close()

你能帮我想想怎么解决这个HTTP 500错误吗?

3 个回答

0

看看你的网站服务器上的日志记录。一般来说,错误信息会安全地保存在服务器上。把错误日志直接展示给用户并不是个好主意。

0

我觉得ycool.com的服务器可能出了问题,因为我用浏览器打不开这个网址。

http://xiaoshuaistudio.ycool.com/post.4606754.html

这个网站的服务器总是会对某些网址返回状态码 500 内部服务器错误,而正常情况下应该返回200 一切正常

如果urlopen这个函数只检查状态码,它就会返回这个错误(虽然服务器实际上发送了那个页面的内容)。

3

页面内容加载时,返回了一个500错误。不过我自己看不出来这个页面的内容是否相关。

为了避免在这个特定的页面或网站上出现错误,你可以这样做(警告 这并不是一个很好的做法)

try:
  response = urlopen(url)
  content = response.read()
except HTTPError, e:
  if e.getcode() == 500:
    content = e.read()
  else:
    raise

撰写回答