-4
我寫了一個函數,即從網頁爬蟲(url)。有一段時間是真的,所以它應該繼續運行,如果什麼都不運行。我有整個函數的返回,它返回,所以我知道它停了。我印刷了每個圈子可以印刷的所有東西,而且一切看起來都很完美。只是因爲某種原因停下來的時候,我不知道。什麼會導致while循環停止?
的邏輯是我有一個初始urls[]
,
每個循環,
讀取從urls
一個網址,
如果網址不parent
,把它,否則繼續
爬蟲links
from URL使用函數爬蟲
put url i ñparent
,把links
在children
放鏈接是不是在父母爲newUrl
如果達到urls
結束,urls=newurls, newurls=null
但由於某些原因,循環只能運行30+次,我檢查還有很多孩子的鏈接,所以我不明白爲什麼停止。
newUrl=[]
parent = []
children =[]
cloud =[]
i=0
n=0
while n<100:
n+=1
url = urls[i]
if url in parent:
i += 1
continue
(links,titles) = crawler(url)
parent.append(url)
links = list(set(links))
children.append(",".join(links))
cloud.append(titles)
links = [link for link in links if link not in parent]
newUrl= newUrl+links # is there anyone realy have a look on code
print(len(parent)) # I guess noone did
i += 1
if i == len(urls):
urls = list(set(newUrl))
newUrl = []
i=0
print (n)
請標記你是在談論蟒蛇。 – HuStmpHrrr 2014-10-31 01:58:08
我保證它不是「沒有理由」。 – Blorgbeard 2014-10-31 02:25:33
@Blorgbeard肯定,應該有一個理由,只是我們都找不到......或者我不會問 – user3754216 2014-10-31 02:26:51