因爲您只下載內容的第一頁。
只需使用一個循環來donwload所有頁面:
import urllib
import urlparse
from bs4 import BeautifulSoup
for i in xrange(3):
url = "http://www.downloadcrew.com/?act=search&page=%d&cat=51" % i
pageHtml = urllib.urlopen(url)
soup = BeautifulSoup(pageHtml)
for a in soup.select("div.productListingTitle a[href]"):
try:
print (a["href"]).encode("utf-8","replace")
except:
print "no link"
如果你do'nt知道頁面的數量,你可以
import urllib
import urlparse
from bs4 import BeautifulSoup
i = 0
while 1:
url = "http://www.downloadcrew.com/?act=search&page=%d&cat=51" % i
pageHtml = urllib.urlopen(url)
soup = BeautifulSoup(pageHtml)
has_more = 0
for a in soup.select("div.productListingTitle a[href]"):
has_more = 1
try:
print (a["href"]).encode("utf-8","replace")
except:
print "no link"
if has_more:
i += 1
else:
break
我在我的電腦上運行它,它得到60三頁鏈接。
祝你好運〜
爲什麼會超過20個鏈接?每頁只有20個鏈接。 – Blorgbeard
@Blorgbeard因爲底部還是有很多頁面。 –
您只下載了第一頁。你必須循環所有這些。 – Blorgbeard