python学習-第四節練習
1219 ワード
問題
taylorswiftの写真を登ります。
コードまず出会う代理の問題、コードは最初に国内のウェブサイトを登ることしかできなくて、全体の全体の代行をつけて目標のウェブページのピクチャーをダウンロードすることができました。 は画像に名前を付ける時、画像は最後までthumbであるため、名前を付ける時はこの部分だけを取ると画像が上書きされます。前に何人かの文字を取ると、879/thumb.jpgなど多くのパスがあります。これでエラーが発生します。だから、まずreplaceで‘/’を削除して、写真の名前にはjpg/pgの後にまだあります。数字の形ですので、私はスプリットで‘?’からリンクします。処分が解けると、名前が統一されます。
taylorswiftの写真を登ります。
コード
from bs4 import BeautifulSoup
import requests,urllib.request
import time
urls = ['http://weheartit.com/inspirations/taylorswift?page={}&before=206961150'.format(i) for i in range(1,2)]
folder_path = r'C:/Users/nancy/Desktop/name/'
def get_img(url):
wb_data = requests.get(url)
soup = BeautifulSoup(wb_data.text,'lxml')
imgs = soup.select('div > div > div > div > div > a > img')
time.sleep(2)
download_links = []
for img in imgs:
img_link = img.get('src')
download_links.append(img_link)
for item in download_links:
itemtext = item.replace('/', '')
num = itemtext.split('?')[0]
urllib.request.urlretrieve(item, folder_path + num[-20:])
for single_url in urls:
get_img(single_url)
締め括りをつける