新手,使用webscrapping从网站提取图像时出现值错误

问题描述

我正在尝试运行此代码,但它给出了值错误

ValueError:未知的URL类型:'/images/christmas-getaway-2017.jpg'

请输入以下代码

    import requests
    import urllib.request
    from bs4 import BeautifulSoup
    from html.parser import HTMLParser
    url = 'https://yts.movie/search/all/all/all/latest/'
    response = requests.get(url)
    response
    soup = BeautifulSoup(response.text,'html.parser')
    print(soup.prettify())
    frame = soup.findAll('div',{'class':'browse-movie-wrap col-xs-10 col-sm-5'})
    for frame in frame:
        figure = frame.find('figure')
        photo_url = figure.img['src']
        print(photo_url)
        name = photo_url.split('/')
        name = name[-1]
        urllib.request.urlretrieve(photo_url,name)



    

解决方法

该照片网址是相对网址:

src="/images/christmas-getaway-2017.jpg"

它不是没有http / https的完整URL,所以为什么它的值是错误的,

https://yts.movie/images/christmas-getaway-2017.jpg

基本网址:https://yts.movie/images/
这是图片的正确网址,因此请先定义您的基本网址,然后提取图片的名称,方法是可以的。并与基本网址连接

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...