2017-10-07 8 views
0

Beautiful Soup을 배우기 위해 노력 중이며 로컬 디렉토리에서 업로드 된 이미지를 긁어 내려고 할 때 문제가 발생합니다. 내가보고 있어요 오류 : 내가 무슨 일이 일어나고 가정하면 이미지가 로컬 디렉토리에서로드하고 URL을 통해 호스팅되지 않는로컬로로드 된 이미지 긁기

ValueError: unknown url type: 'images/ixa2.png' 

.

<img width="200" align="left" hspace="0" src="ixa/cards/axisofmortality.jpg"> 

내가이 이러한 이미지를 긁어 가능하면 궁금하고, 만약 그렇다면 방법 : 이것은 내가 긁어 시도하고있는 요소를 검사 할 때 모습입니다.

from urllib import request 
import urllib.request 
from bs4 import BeautifulSoup as soup 

def make_soup(url): 
    result = request.urlopen(url) 
    page = result.read() 

    parsed_page = soup(page, "html.parser") 
    result.close() 
    return parsed_page 

def get_images(url): 
    soup = make_soup(url) 
    images = [img for img in soup.findAll('img')] 
    print (str(len(images)) + "images found.") 
    print('Downloading images to current working directory.') 
    #compile our unicode list of image links 
    image_links = [each.get('src') for each in images] 
    for each in image_links: 
     filename=each.split('/')[-1] 
     urllib.request.urlretrieve(each, filename) 
    return image_links 

get_images('http://mythicspoiler.com/') 

답변

1

당신은 불완전한 URL에서 이미지를 다운로드하려고 :

는 여기에 내가 함께 일하고 코드입니다.

def get_images(url): 
    soup = make_soup(url) 
    images = [img for img in soup.findAll('img')] 
    print (str(len(images)) + "images found.") 
    print('Downloading images to current working directory.') 
    #compile our unicode list of image links 
    image_links = [each.get('src') for each in images] 
    for each in image_links: 
     filename=each.split('/')[-1] 
     urllib.request.urlretrieve('http://mythicspoiler.com/' + each, filename) # <--- 
    return image_links 
+0

간단하고 효과가, 감사합니다 :

나의 제안은 다음과 같이한다. – Bonteq