1
這是一個非常奇怪的錯誤,我似乎無法弄清楚。BeautifulSoup遞歸錯誤調用tag.string
import urllib2
from bs4 import BeautifulSoup
url = 'http://www.crummy.com/software/BeautifulSoup/bs4/doc/'
soup = BeautifulSoup(urllib2.urlopen(url))
print soup.title
這將返回
<title>Beautiful Soup Documentation â€」 Beautiful Soup 4.0.0 documentation</title>
如應在意料之中,但是如果我把它改爲「打印soup.title.string」(這應該返回減去所有html標籤上方),我得到
Traceback (most recent call last):
File "C:\Users\MyName\Desktop\MyProgram\Python\test.py", line 7, in <module>
print soup.title.string
File "C:\Python27\lib\idlelib\rpc.py", line 595, in __call__
value = self.sockio.remotecall(self.oid, self.name, args, kwargs)
File "C:\Python27\lib\idlelib\rpc.py", line 210, in remotecall
seq = self.asynccall(oid, methodname, args, kwargs)
File "C:\Python27\lib\idlelib\rpc.py", line 225, in asynccall
self.putmessage((seq, request))
File "C:\Python27\lib\idlelib\rpc.py", line 324, in putmessage
s = pickle.dumps(message)
File "C:\Python27\lib\copy_reg.py", line 74, in _reduce_ex
getstate = self.__getstate__
RuntimeError: maximum recursion depth exceeded
我環顧四周,找不到遇到此錯誤的其他人。有什麼建議?
編輯:所以我已經嘗試了一些其他頁面上的相同的代碼,它的工作更好。例如,google.com有效。這意味着這是關於頁面構建的東西。
適用於我在4.0.1;你的版本號是多少? – DSM
4.1.3,它們提供的最新版本。我會嘗試返回幾個版本並測試。 – Cyborg771
這可能不是它 - 我只是升級到4.1.3,它仍然適用於我。 : -/ – DSM