我read当我收到此错误时,我应该更好地指定网址。我假设我应该在两个显示或可访问的选项之间指定。我怎么能这样做?
在urllib或其教程中,我找不到任何内容。我的假设是真的吗?我可以在某处找到可能的网址吗?
当我在浏览器中打开此网址时,我被重定向到新网址。
我尝试访问的网址:http://www.uniprot.org/uniprot/P08198_CSG_HALHA.fasta
我被重定向的新网址:http://www.uniprot.org/uniprot/?query=replaces:P08198&format=fasta
import urllib.request
try:
response = urllib.request.urlopen(url)
except urllib.error.HTTPError as e:
if int(e.code) == 300:
# what now?
答案 0 :(得分:0)
状态码300从服务器返回告诉您,您的请求在某种程度上是不完整的,您将更加具体。
测试网址,我尝试从http://www.uniprot.org/
搜索并输入搜索“P08198”。这导致页面http://www.uniprot.org/uniprot/P08198
告诉我
Demerged into Q9HM69, B0R8E4 and P0DME1. [ List ]
对我而言,对某些蛋白质的查询似乎不够具体,因为这个蛋白质代码被分成子类别或子序列Q9HM69,B0R8E4和P0DME1。
状态代码300是来自服务器应用程序的信号,您的请求在某种程度上是模棱两可的。方式,您可以使其具体到特定于应用程序并且与Python
或HTTP
状态代码无关,您必须在应用程序逻辑中找到有关良好URL的更多详细信息。