這是自己學習Python以來,第一次實戰(zhàn)編寫的一個小功能。
循序漸進,分三個階段。
第一階段,只是單純的獲取貼吧某頁面的圖片鏈接
import requestsfrom bs4
import BeautifulSoup
url='http://tieba.baidu.com/p/3990192462'
wb_data=requests.get(url)
soup=BeautifulSoup(wb_data.text,'lxml')#獲取這個帖子下,正文中圖片鏈接。
links=soup.select('img.BDE_Image')for link in links:
clink=link.get('src')
print(clink)
第二階段,我添加了下載該頁面圖片到本地電腦的功能。
import requests,urllib.requestfrom bs4
import BeautifulSoup
url='http://tieba.baidu.com/p/3990192462'
path='/Users/pro/Desktop/picture/'
# picture 后面是否加上"/",就會得到不一樣的下載結果,細節(jié)很關鍵。
wb_data=requests.get(url)
soup=BeautifulSoup(wb_data.text,'lxml')
#獲取這個帖子下,正文中圖片鏈接。
links=soup.select('img.BDE_Image')
for link in links:
clink=link.get('src')
print(clink)
#下載圖片
urllib.request.urlretrieve(clink,path+clink[-10:])
print("Done")
'''Python中,mac系統(tǒng)下,如何查看文件的絕對路徑?答:打開mac終端,復制文件粘貼進去,就能得到該文件的絕對路徑。其次,注意,mac系統(tǒng)下的文件路徑都是 英文!'''
第三階段,我又添加了新功能。這個帖子,一共4頁。我要實現(xiàn)一鍵下載4頁中的圖片到我的本地電腦中。
import requests,urllib.request,time
from bs4 import BeautifulSoup
url='http://tieba.baidu.com/p/3990192462?pn=1' #這是起始頁,一共4頁。
path='/Users/pro/Desktop/picture/' # picture 后面是否加上"/",就會得到一樣的下載結果,細節(jié)很關鍵。
def download_pic_from(url):
wb_data = requests.get(url)
soup = BeautifulSoup(wb_data.text, 'lxml')
# 獲取這個帖子下,正文中圖片鏈接。
links = soup.select('img.BDE_Image')
for link in links:
clink = link.get('src')
print(clink)
# 下載圖片
urllib.request.urlretrieve(clink, path + clink[-10:])
print("Done")
def get_more_pages(start,end):
for one in range(start,end):
url2="http://tieba.baidu.com/p/3990192462?pn={}".format(one)
download_pic_from(url2)
time.sleep(2)
get_more_pages(1,8)
能實現(xiàn)這樣的功能,說明我進步了,不過,該實例也只能說明一點點小進步而已,功能過于簡單,我相信Python有著更為強大的功能等待著我去開發(fā)和學習。
最終應用?。。?/p>