Мне нужно очистить веб-сайт - https://mphc.gov.in/judgement-orders В разделе Free-Text-text мне нужно ввести «A» в поле Free-Text. Затем выберите диапазон дат - скажем, с 19.06.2020 по 19.06.2020, затем нажмите кнопку поиска.
Я попытался сделать это, используя следующий код:
def start_requests(self):
yield scrapy.Request(self.start_urls[0],
callback=self.parse,errback=self.errback_httpbin,dont_filter=True)
def parse(self, response):
headers={
'Accept': '*/*',
'Accept-Encoding': 'gzip, deflate, br',
'Accept-Language': 'en-US,en;q=0.9',
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.106 Safari/537.36',
'X-Requested-With': 'XMLHttpRequest',
'Connection': 'keep-alive'
}
data={
'btn_search':'A',
'ddl_o_j_fo':'',
'fno':'01',
'txt_order_dt':'',
'j1':'',
'j2':'',
'pj':'',
'ct':'',
'cn':'',
'cy':'',
'id':'IND',
'page':'1',
'sort':'jo',
'ad':'DESC',
'date1':'19-06-2020',
'date2':'19-06-2020',
'code':'',
'csrf_token':'1b299f78533375d78ddd36c860858d1293a0f3a1',
}
yield Request(self.start_urls[0],callback=self.start_scraping)
def start_scraping(self, response):
open_in_browser(response)
all_data = response.css('body').extract()
caseno = response.css('#dv_srh_dt a').extract()
sb=response.css('#bench+ table b:nth-child(1)').extract()
tot=response.css('.bbb b').extract()
#print(all_data)
print(tot)
print("-------------------------------------")
print(caseno)
print(sb)
Но на выходе он возвращает пустой список. Понятия не имею, почему он не заполняет детали и не извлекает необходимые данные.
Любая помощь будет принята с благодарностью. Спасибо