
На картинке видно, что в названии оператора присутствуют некоторые недопустимые символы. Они исправляются и отображаются в chrome, но при копировании, когда я запускаю даже response.text в оболочке, я получаю
scrapy.exceptions.NotSupported: Response content isn't text
Когда я проверяю другие задания, где у оператора этого нет текст Я могу нормально запустить скрипт и получить все данные.
Я уверен, что это из-за unicodes. Я и не знаю, как сказать scrapy, чтобы они игнорировались и запускали все остальное как текст, чтобы я мог что-то вырезать.
ниже - это просто скелет моего кода
class PrintSpider(scrapy.Spider):
name = "printer_data"
start_urls = [
'http://192.168.4.107/jobid-15547'
]
def parse(self, response):
job_dict = {}
url_split = response.request.url.split('/')
job_dict['job_id'] = url_split[len(url_split)-1].split('-',1)[1]
job_dict['job_name'] = response.xpath("/html/body/fieldset/big[1]/text()").extract_first().split(': ', 1)[1] # this breaks here.
Обновление с другими вещами, которые я уже пробовал
Я работал с этим некоторое время в оболочке Scrapy. response.text дает исключение, которое я поставил ранее. эта проверка также находится в response.xpath.
Я немного посмотрел код, но не могу найти, как работает response.text. Я чувствую, что мне нужно как-то исправить эти символы в ответе, чтобы scrapy рассматривал его как текст и мог обрабатывать html вместо игнорирования всей страницы, чтобы я ничего не мог получить.
Я бы тоже хотел способ сохранить ответ в файл, не открывая в chrome и сохранив его, чтобы я мог работать с исходным документом для тестирования.