Python爬蟲實(shí)現(xiàn)爬取京東手機(jī)頁面的圖片(實(shí)例代碼)
更新時(shí)間:2017年11月30日 10:15:13 作者:可豆豆
下面小編就為大家分享一篇Python爬蟲實(shí)現(xiàn)爬取京東手機(jī)頁面的圖片實(shí)例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
實(shí)例如下所示:
__author__ = 'Fred Zhao'
import requests
from bs4 import BeautifulSoup
import os
from urllib.request import urlretrieve
class Picture():
def __init__(self):
self.headers = {'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.95 Safari/537.36'}
self.base_url = 'https://list.jd.com/list.html?cat=9987,653,655&page='
self.base_path = os.path.dirname(__file__)
def makedir(self, name):
path = os.path.join(self.base_path, name)
isExist = os.path.exists(path)
if not isExist:
os.makedirs(path)
print("File has been created.")
else:
print('OK!The file is existed. You do not need create a new one.')
os.chdir(path)
def request(self, url):
r = requests.get(url, headers=self.headers)
return r
def get_img(self, page):
r = self.request(self.base_url + str(page))
plist = BeautifulSoup(r.text, 'lxml').find('div', id='plist')
item = plist.find_all('li', class_='gl-item')
print(len(item))
self.makedir('pictures')
num = 0
for i in item:
num += 1
imglist = i.find('div', class_='p-img')
print(num)
img = imglist.find('img')
print('This is %s picture' %num)
if img.get('src'):
url = 'https:' + img.get('src')
fileName = img.get('src').split('/')[-1]
urlretrieve(url, filename=fileName)
elif img.get('data-lazy-img'):
url = 'https:' + img.get('data-lazy-img')
fileName = img.get('data-lazy-img').split('/')[-1]
urlretrieve(url, filename=fileName)
if __name__ == '__main__':
picture = Picture()
for i in range(2): #控制爬取的頁數(shù)
picture.get_img(i+1)
以上這篇Python爬蟲實(shí)現(xiàn)爬取京東手機(jī)頁面的圖片(實(shí)例代碼)就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
您可能感興趣的文章:
- python 實(shí)現(xiàn)手機(jī)自動(dòng)撥打電話的方法(通話壓力測試)
- Python正則匹配判斷手機(jī)號(hào)是否合法的方法
- python使用itchat實(shí)現(xiàn)手機(jī)控制電腦
- Python實(shí)現(xiàn)自動(dòng)上京東搶手機(jī)
- Python隨機(jī)生成手機(jī)號(hào)、數(shù)字的方法詳解
- Python爬蟲抓取手機(jī)APP的傳輸數(shù)據(jù)
- python實(shí)現(xiàn)發(fā)送和獲取手機(jī)短信驗(yàn)證碼
- 手機(jī)使用python操作圖片文件(pydroid3)過程詳解
相關(guān)文章
分?jǐn)?shù)霸榜! python助你微信跳一跳拿高分
分?jǐn)?shù)霸榜!這篇文章主要為大家詳細(xì)介紹了python助你微信跳一跳拿高分的秘籍,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-01-01
Python遞歸遍歷列表及輸出的實(shí)現(xiàn)方法
這篇文章主要介紹了Python遞歸遍歷列表及輸出的實(shí)現(xiàn)方法,可實(shí)現(xiàn)遞歸遍歷列表中的每一項(xiàng),若是元祖則判斷是否為基本類型然后輸出,需要的朋友可以參考下
2015-05-05
python中py文件與pyc文件相互轉(zhuǎn)換的方法實(shí)例
pyc是一種二進(jìn)制文件,是由py文件經(jīng)過編譯后,生成的文件,下面這篇文章主要給大家介紹了關(guān)于python中py文件與pyc文件相互轉(zhuǎn)換的相關(guān)資料,需要的朋友可以參考下
2022-05-05 
