ホームページ >バックエンド開発 >Python チュートリアル >Python は京東モールの携帯電話リストの URL サンプル コードをキャプチャします
@作者: 良い気性
'''
urllib2 をインポート
bs4 をインポート
時間のインポート
def getPage(urlStr):
'''
ページ コンテンツを取得します
'''
content = urllib2.urlopen(urlStr).read()
コンテンツを返します
def getNextPageUrl(currPageNum):
#http://list.jd.com/9987-653-655-0-0-0-0-0-0-0-1-1-ページ番号- 1 -1-72-4137-33.html
url = u'http://list.jd.com/9987-653-655-0-0-0-0-0-0-0-1- 1 -'+str(currPageNum+1)+'-1-1-72-4137-33.html'
#次のページはありますか?
content = getPage(url);
スープ = bs4.BeautifulSoup(content)
リスト =Soup.findAll('span',{'class':'next-disabled'});
if(len(list) == 0):
return url
return ''
defanalystList():
pageNum = 0
list = []
url = getNextPageUrl(pageNum)
while url != '' :
スープ = bs4.BeautifulSoup(getPage(url))
ページリスト =Soup.findAll('div',{'class':'p-name'})
ページリストの要素:
Soup1 = BS4.Beautifulsoup (Str (ELEM))
List.append (soup1.find ('a') ['href'])
Pagenum = Pagenum+1
PRINT PAGENUM
url = getNextPageUrl(pageNum)
リストを返します
def applyContent(url):
return ''
def writeToFile(list, path):
f = open(path, 'a')
リスト内の要素:
f.write(elem+'n')
f.close ()
if __name__ == '__main__':
list =analyzeList()
print 'クロールされた合計'+str(len(list))+'n'
writeToFile(list , u 'E:\jd_phone_list.dat');