Estoy trabajando en ciertos proyectos relacionados con acciones en los que he tenido la tarea de recopilar todos los datos diariamente durante los últimos 5 años. es decir desde el 2016 a la fecha. En particular, pensé en usar selenio porque puedo usar el rastreador y el bot para raspar los datos según la fecha. Así que usé el uso del clic del botón con selenium y ahora quiero que los mismos datos que muestra el navegador selenium sean alimentados por scrappy. Este es el sitio web en el que estoy trabajando ahora mismo. He escrito el siguiente código dentro de scrappy spider.
class FloorSheetSpider(scrapy.Spider): name = "nepse" def start_requests(self): driver = webdriver.Firefox(executable_path=GeckoDriverManager().install()) floorsheet_dates = ['01/03/2016','01/04/2016', up to till date '01/10/2022'] for date in floorsheet_dates: driver.get( "https://merolagani.com/Floorsheet.aspx") driver.find_element(By.XPATH, "//input[@name='ctl00$ContentPlaceHolder1$txtFloorsheetDateFilter']" ).send_keys(date) driver.find_element(By.XPATH, "(//a[@title='Search'])[3]").click() total_length = driver.find_element(By.XPATH, "//span[@id='ctl00_ContentPlaceHolder1_PagerControl2_litRecords']").text z = int((total_length.split()[-1]).replace(']', '')) for data in range(z, z + 1): driver.find_element(By.XPATH, "(//a[@title='Page {}'])[2]".format(data)).click() self.url = driver.page_source yield Request(url=self.url, callback=self.parse) def parse(self, response, **kwargs): for value in response.xpath('//tbody/tr'): print(value.css('td::text').extract()[1]) print("ok"*200)Actualización: error después de que la respuesta sea
2022-01-14 14:11:36 [twisted] CRITICAL: Traceback (most recent call last): File "/home/navaraj/PycharmProjects/first_scrapy/env/lib/python3.8/site-packages/twisted/internet/defer.py", line 1661, in _inlineCallbacks result = current_context.run(gen.send, result) File "/home/navaraj/PycharmProjects/first_scrapy/env/lib/python3.8/site-packages/scrapy/crawler.py", line 88, in crawl start_requests = iter(self.spider.start_requests()) TypeError: 'NoneType' object is not iterableQuiero enviar el contenido html de la web actual al alimentador scrapy, pero estoy recibiendo un error inusual durante los últimos 2 días. Cualquier ayuda o sugerencia será muy apreciada.