Ошибка сканирования через локально размещенный веб-сайт - PullRequest
0 голосов
/ 07 октября 2018

Я хочу сканировать веб-сайт, который в настоящее время размещается локально.Разве нельзя сканировать локально размещенный веб-сайт?Я получаю эту ошибку:

 File "C:/Users/hero/PycharmProjects/project/Crawler.py", line 22, in <module>
    imagefile.write(urllib.request.urlopen("http://192.168.1.1/Webpage.html"+img_src).read())
urllib.error.HTTPError: HTTP Error 404: Not Found

Код для сканера:

import urllib.request
from bs4 import BeautifulSoup


def make_soup(url):
    thepage = urllib.request.urlopen(url)
    soupdata = BeautifulSoup(thepage, "html.parser")
    return soupdata


i = 1
soup = make_soup("http://192.168.1.1/Webpage.html")

unique_srcs = []
for img in soup.findAll('img'):
    if img.get('src') not in unique_srcs:
        unique_srcs.append(img.get('src'))
for img_src in unique_srcs:
    filename = str(i)
    i = i + 1
    imagefile = open(filename + '.png', 'wb')
    imagefile.write(urllib.request.urlopen("http://192.168.1.1/Webpage.html"+img_src).read())
    imagefile.close()

1 Ответ

0 голосов
/ 07 октября 2018

Вы забыли добавить косую черту / в пути URL.

Просто измените строку на что-то вроде этого:

imagefile.write(urllib.request.urlopen("http://192.168.1.1/Webpage.html/"+img_src).read())

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...