Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/282.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/unit-testing/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python-程序突然不工作_Python_Python Requests - Fatal编程技术网

Python-程序突然不工作

Python-程序突然不工作,python,python-requests,Python,Python Requests,我的代码在没有警告的情况下停止工作。我把范围缩小到请求。获取不再获取链接的html。相反,它会得到 我知道事实上,它曾一度奏效,但我不明白是什么改变了 t = requests.get("http://dictionary.goo.ne.jp/srch/jn/変体/m0u/") soup2 = BeautifulSoup(t.content) lookup2 = soup2.find_all("dl", {"class":"allList"})[0] link = lookup2.find_al

我的代码在没有警告的情况下停止工作。我把范围缩小到
请求。获取
不再获取链接的html。相反,它会得到

我知道事实上,它曾一度奏效,但我不明白是什么改变了

t = requests.get("http://dictionary.goo.ne.jp/srch/jn/変体/m0u/")
soup2 = BeautifulSoup(t.content)
lookup2 = soup2.find_all("dl", {"class":"allList"})[0]
link = lookup2.find_all("a")[0]
link = link.get("href")
link = "http://dictionary.goo.ne.jp/" + link
r = requests.get(link)
soup = BeautifulSoup(r.content)
lookup = soup.find_all("div", {"class":"meaning"})[0].text
print(lookup)
获取错误:

Traceback (most recent call last):
  File "C:/Users/Dominic/PycharmProjects/untitled2/main.py", line 12, in <module>
    lookup2 = soup2.find_all("dl", {"class":"allList"})[0]
IndexError: list index out of range
回溯(最近一次呼叫最后一次):
文件“C:/Users/Dominic/PycharmProjects/untitled2/main.py”,第12行,在
lookup2=soup2.find_all(“dl”,“class”:“allList”})[0]
索引器:列表索引超出范围

您的代码假定以下行:

 t = requests.get("http://dictionary.goo.ne.jp/srch/jn/変体/m0u/")
总是给出相同的结果。而事实肯定并非如此。网站可能会因为维护而关闭,可能会暂时被淹没,在渲染网站时可能会出现错误等等

这些类型的问题通过HTTP状态代码进行通信,并且可以使用
t.status\u code
检索

如果状态代码不是200,则不能再对
t.contents
中的HTML进行任何假设,例如存在任何
标记

为了使代码更加健壮,您可以自己检查状态代码,或者至少在使用
t.contents
之前调用
t.raise\u for\u status()


有关更多信息,请参阅
请求

是一个成功响应对象,即您发布的代码中
r
t
的字符串表示形式。您的代码工作正常,它会打印
普通の形や体裁と違っていること。体裁を変えること。また、その形や体裁。
你确定你不是在某个地方打印
t
r
吗?对我来说很好打印“普通の形や体裁と違っていること。体裁を変えること。また、その形や体裁��"我确实需要打印(t)才能得到它,我认为这是它显示给我的错误的来源,因为它之前没有显示。我得到的错误是:回溯(最近一次调用):文件“C:/Users/Dominic/PycharmProjects/untitled2/main.py”,第12行,在lookup2=soup2.find_all(“dl”,“{”class:“allList”})[0]索引器:列出索引超出范围,所以你的汤找不到任何东西!Pycharm有一个极好的调试器。试着设置一个断点,然后一步一步地进行。