从网站请求数据时获取验证码错误

2024-06-16 09:31:02 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在做一个项目,检测车牌并显示车主信息。我目前正面临一个验证码问题,同时要求从网站上获取车辆和车主的详细信息

下面是Python代码:

import sys
import requests
from bs4 import BeautifulSoup, SoupStrainer

home_url = 'https://parivahan.gov.in/rcdlstatus/?pur_cd=102'
post_url = 'https://parivahan.gov.in/rcdlstatus/vahan/rcDlHome.xhtml'

first = sys.argv[1]

second = sys.argv[2]

r = requests.get(url=home_url)
cookies = r.cookies
soup = BeautifulSoup(r.text, 'html.parser')
viewstate = soup.select('input[name="javax.faces.ViewState"]')[0]['value']

data = {
'javax.faces.partial.ajax':'true',
'javax.faces.source': 'form_rcdl:j_idt59',
'javax.faces.partial.execute':'@ALL',
'javax.faces.partial.render': 'form_rcdl:pnl_show form_rcdl:pg_show form_rcdl:rcdl_pnl',
'form_rcdl:j_idt59':'form_rcdl:j_idt59',
'form_rcdl':'form_rcdl',
'form_rcdl:tf_reg_no1': first,
'form_rcdl:tf_reg_no2': second,
'javax.faces.ViewState': viewstate,
}

r = requests.post(url=post_url, data=data, cookies=cookies)
soup = BeautifulSoup(r.text, 'html.parser')
table = SoupStrainer('tr')
soup = BeautifulSoup(soup.get_text(), 'html.parser', parse_only=table)
print(soup.get_text())

在运行命令“python app1.py MH04GM 9660”后,出现以下错误:

PS C:\Users\apbak\Desktop\API> python app1.py MH04GM 9660

PrimeFaces.cw("InputText","widget_form_rcdl_j_idt32_CaptchaID",{id:"form_rcdl:j_idt32:CaptchaID"});

我试图从中获取所有者信息的网站是:https://parivahan.gov.in/rcdlstatus/?pur_cd=102

如何解决此错误?任何帮助都会很好

先谢谢你


Tags: texthttpsimportformurlsysrequestsgov