Как очистить casenet с помощью Scrapy formRequest? - PullRequest
0 голосов
/ 15 ноября 2018

Я хотел бы очистить этот сайт: https://www.courts.mo.gov/casenet/cases/searchCases.do?searchType=name

Вот мой код:

import scrapy
from scrapy.selector import Selector
from scrapy.contrib.spiders import Rule
from scrapy.linkextractors import LinkExtractor
from Challenge6.items import Challenge6Item

class CasenetSpider(scrapy.Spider):
    name = "casenet"
    def start_requests(self):
        start_urls = [
            "https://www.courts.mo.gov/casenet/cases/nameSearch.do?searchType=name"
        ]
        Rules = (Rule(LinkExtractor(allow=(), restrict_xpaths=('//a[@class="button next"]',)), callback="parse", follow= True),)
        for url in start_urls:
            yield scrapy.Request(url=url, callback=self.parse )

    def parse(self, response):
        data = {
            inputVO.lastName: 'smith',
            inputVO.firstName: 'fred',
            inputVO.yearFiled: 2010,
        }
        yield scrapy.FormRequest(url="https://www.courts.mo.gov/casenet/cases/nameSearch.do?searchType=name", formdata=data, callback=self.parse_pages)
        casenet_row = Selector(response).xpath('//tr[@align="left"]')

    def parse_pages(self, response):
        for row in casenet_row:
            if "Part Name" not in row or "Address on File" not in row:
                item = Challenge6Item()
                item['name'] = quote.xpath('div[@class="tags"]/a[@class="tag"]/text()').extract()
                yield item

Однако я получаю эту ошибку:

/ var / www / html / challenge6 / Challenge6 / Challenge6 / spiders / casenet_crawler.py: 3: ScrapyDeprecationWarning: Модуль scrapy.contrib.spiders устарел, используйте scrapy.spiders вместо scrapy.contrib.spiders Правило импорта 2018-11-14 17:47:54 [scrapy.utils.log] ИНФОРМАЦИЯ: Запуск Scrapy 1.5.1 (бот: Challenge6) 2018-11-14 17:47:54 [scrapy.utils.log] ИНФОРМАЦИЯ: Версии: lxml 4.2.5.0, libxml2 2.9.8, cssselect 1.0.3, parsel 1.5.1, w3lib 1.19.0, Twisted 18.9.0, Python 2.7.12 (по умолчанию, 4 декабря 2017 г., 14:50:18) - [GCC 5.4.0 20160609], pyOpenSSL 18.0.0 (OpenSSL 1.1.0i 14 августа 2018 г.), криптография 2.3.1, платформа Linux-4.4.0-1066-aws-x86_64-with-Ubuntu-16.04-xenial 2018-11-14 17:47:54 [scrapy.crawler] ИНФОРМАЦИЯ: Переопределенные параметры: {'NEWSPIDER_MODULE': 'Challenge6.spiders', 'SPIDER_MODULES': ['Challenge6.spiders'], 'ROBOTSTXT_OBEY': True, 'BOT_NAME': 'Challenge6'}2018-11-14 17:47:55 [scrapy.middleware] ИНФОРМАЦИЯ: Включенные расширения: ['scrapy.extensions.memusage.MemoryUsage', 'scrapy.extensions.logstats.LogStats', 'scrapy.extensions.telnet.TelnetConsole', 'scrapy.extensions.corestats.CoreStats'] 2018-11-14 17:47:55 [scrapy.middleware] ИНФОРМАЦИЯ: Включено промежуточное программное обеспечение загрузчика: ['scrapy.downloadermiddlewares.robotstxt.RobotsTxtMiddleware', 'scrapy.downloadermiddlewares.httpauth.HttpAuthMiddleware', 'scrapy.downloaderTimedownMoutoutMiddoutMiddle.Did, «scrapy.downloadermiddlewares.defaultheaders.DefaultHeadersMiddleware», «scrapy.downloadermiddlewares.useragent.UserAgentMiddleware», «scrapy.downloadermiddlewares.retry.RetryMiddleware», «scrapy.downloadermidwarewareReditionMididMiddlePressMiddleDiddMiddleDiddleMiddlePressMiddleDiddleMiddlePressMiddlePlayDidDidMiddlePressMiddleMiddlePressMiddleMiddlePressMiddlePidMiddleMiddlePressMiddleMiddlePressMiddlePlayDidMiddlePressMiddleMiddleMiddleMid, 'scrapy.downloadermiddlewares.redirect.RedirectMiddleware', 'scrapy.downloadermiddlewares.cookies.CookiesMiddleware', 'scrapy.downloadermiddlewares.httpproxy.HttpProxyMiddleware', 'scrapy.downloadermiddlewares.stats.DownloaderStats '] 2018-11-14 17:47:55 [scrapy.middleware] ИНФОРМАЦИЯ: Включено промежуточное программное обеспечение паука: [' scrapy.spidermiddlewares.httperror.HttpErrorMiddleware ',' scrapy.spidermiddlewares.offsite.OffsiteMiddleware 'scrapy.spidermiddlewares.referer.RefererMiddleware ',' scrapy.spidermiddlewares.urllength.UrlLengthMiddleware ',' scrapy.spidermiddlewares.depth.DepthMiddleware '] 2018-11-14 17:47:55 [scrapy.middleware] INFO: включены конвейеры элементов[] 2018-11-14 17:47:55 [scrapy.core.engine] ИНФОРМАЦИЯ: Паук открыт 2018-11-14 17:47:55 [scrapy.extensions.logstats] ИНФОРМАЦИЯ: Просканировано 0 страниц (на 0 страницах /min), очищено 0 элементов (при 0 элементах / мин.) 2018-11-14 17:47:55 [scrapy.extensions.telnet] ОТЛАДКА: консоль Telnet прослушивает 127.0.0.1:6023 2018-11-14 17:47:55 [scrapy.downloadermiddlewares.retry] ОТЛАДКА: повторная попытка https://www.courts.mo.gov/robots.txt> (ошибка 1 раз): [] 2018-11-14 17:47:55 [scrapy.downloadermiddlewares.retry] ОТЛАДКА: повторная попытка https://www.courts.mo.gov/robots.txt> (ошибка 2 раза): [] 2018-11-14 17:47:55 [scrapy.downloadermiddlewares.retry] DEBUG: повторная попытка https://www.courts.mo.gov/robots.txt> (не удалось 3 раза): [] 2018-11-14 17:47:55 [scrapy.downloadermiddlewares.robotstxt] ОШИБКА: ошибка при загрузке https://www.courts.mo.gov/robots.txt>: [] Traceback (последний последний вызов):Файл "/usr/local/lib/python2.7/dist-packages/scrapy/core/downloader/middleware.py", строка 43, в process_request defer.returnValue ((выдает download_func (request = request, spider = spider))) ResponseNeverReceived: [] 2018-11-14 17:47:55 [scrapy.downloadermiddlewares.retry] ОТЛАДКА: повторная попытка https://www.courts.mo.gov/casenet/cases/nameSearch.do?searchType=name> (ошибка 1 раз): [] 2018-11-14 17:47:55 [scrapy.downloadermiddlewares.retry] ОТЛАДКА: повторная попытка https://www.courts.mo.gov/casenet/cases/nameSearch.do?searchType=name> (ошибка 2 раза): [] 2018-11-14 17:47:55 [scrapy.downloadermiddlewares.retry] ОТЛАДКА: повторная попытка https://www.courts.mo.gov/casenet/cases/nameSearch.do?searchType=name> (ошибка 3 раза): []2018-11-14 17:47:56 [scrapy.core.scraper] ОШИБКА: Ошибка при загрузке https://www.courts.mo.gov/casenet/cases/nameSearch.do?searchType=name> Traceback (последний вызов был последним): файл"/Usr/local/lib/python2.7/dist-packages/scrapy/core/downloader/middleware.py", строка 43, в process_request defer.returnValue ((yield download_func (request = request, spider = spider))) ResponseNeverReceived: [] 2018-11-14 17:47:56 [scrapy.core.engine] ИНФОРМАЦИЯ: Закрытие паук (готово) 2018-11-14 17:47:56 [scrapy.statscollectors] ИНФОРМАЦИЯ: Статистика Dumping Scrapy: {'downloader / exception_count': 6, 'Загрузчик / exception_type_count / twisted.web._newclient.ResponseNeverReceived': 6, «загрузчик / request_bytes»: 1455, «загрузчик / запрос_count»: 6, 'downloader / request_method_count / GET': 6, 'finish_reason': «Finished», «Finish_time»: datetime.datetime (2018, 11, 14, 23, 47, 56, 195277), 'log_count / DEBUG': 7, 'log_count / ERROR': 2, 'log_count / INFO': 7, 'memusage / max': 52514816, 'memusage / startup': 52514816, «retry / count»: 4, «retry / max_reached»: 2, 'retry / reason_count / twisted.web._newclient.ResponseNeverReceived': 4, «планировщик / удаленный / удаленный»: 3, «планировщик / удаленный / память»: 3, «Планировщик / в очереди»: 3, «Планировщик / в очереди / память»: 3, 'start_time': datetime.datetime (2018, 11, 14, 23, 47, 55, 36009)}

Что я делаю не так?

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