Python实战作业:第一周第四次爬取霉霉图片

一天补四次作业之四第一周第四次爬取霉霉图片。
结果如下:


Python实战作业:第一周第四次爬取霉霉图片_第1张图片
QQ截图20160521185529.png

代码如下:

from bs4 import BeautifulSoup
import requests,time,urllib

header={'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.94 Safari/537.36'}
page_img_urls = []
def get_img_url(true_page):
    for page in range(1,true_page):
        url = 'http://weheartit.com/inspirations/taylorswift?scrolling=true&page={}'.format(page)
        time.sleep(2)
        wb_data = requests.get(url,headers = header)
        soup    = BeautifulSoup(wb_data.text,'lxml')
        for img_url in soup.select('a.js-entry-detail-link'):
            page_img_url = img_url.get('href')
            page_img_urls.append(page_img_url)
get_img_url(21)
full_url_path = 'http://weheartit.com/'
folder_path   ='F://存放图片/taylorswift/'
for download_url in page_img_urls:
    full_url = full_url_path+download_url
    download_wb_data = requests.get(full_url,headers = header)
    time.sleep(1)
    downsoup = BeautifulSoup(download_wb_data.text,'lxml')
    download_img_url  =  downsoup.select('img.full-size')[0].get('src')
    img_name   = download_img_url.split('/')[-2]
    img_format = download_img_url.split('.')[-1]
    urllib.request.urlretrieve(download_img_url,folder_path+img_name+'.'+img_format)
    print('done!')

总结:
1、这一课的作业之前学习的时候已经写好代码了,就不重做,直接贴上次的代码了。
2、这个网站不用代理的话,没有办法使用。
3、难点在于如果下载图片,这里要导入一个新的库urllib,用这个库中urllib.request.urlretrieve的方法来下载图片,这个是老师给的视频中学到的方法。
4、另外这节课,还讲诉了一些异步加载时获取想要信息的方法。

你可能感兴趣的:(Python实战作业:第一周第四次爬取霉霉图片)