Skip to content

Instantly share code, notes, and snippets.

@nikhilweee
Last active January 28, 2026 03:37
Show Gist options
  • Select an option

  • Save nikhilweee/9efd9731880104dd00ecf2ed8effacc5 to your computer and use it in GitHub Desktop.

Select an option

Save nikhilweee/9efd9731880104dd00ecf2ed8effacc5 to your computer and use it in GitHub Desktop.
Get vehicle info from an Indian registration number
import sys
import requests
from bs4 import BeautifulSoup, SoupStrainer
home_url = 'https://parivahan.gov.in/rcdlstatus/'
post_url = 'https://parivahan.gov.in/rcdlstatus/vahan/rcDlHome.xhtml'
# Everything before the last four digits: MH02CL
first = sys.argv[1]
# The last four digits: 0555
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_idt32',
'javax.faces.partial.execute':'@all',
'javax.faces.partial.render': 'form_rcdl:pnl_show form_rcdl:pg_show form_rcdl:rcdl_pnl',
'form_rcdl:j_idt32':'form_rcdl:j_idt32',
'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())

Programmatically extract owner info from Indian registration numbers

Usage

$ python registration_info.py MH02CL 0555
Registration No:
MH02CL0555
Registration Date:
20-Jan-2012

Chasi No:
WBAKB42080CY83879
Engine No:
16257849

Owner Name: 
SHAH RUKH KHAN

Vehicle Class: 
LMVIMP
Fuel Type:
PETROL

Maker Model:
BMW INDIA PVT. LTD., BMW 740 L I PETROL

Requirements

requests
beautifulsoup4
@ashish-budhraja
Copy link

No government portal flood with ads on their website 😅

The Parivahan Sewa was launched by the Ministry of Road Transport and Highways (MoRTH), Government of India. It was developed as part of the e-Governance initiative to provide online services related to road transport across India. The platform was designed to digitize various transport-related services, improve transparency, and reduce the need for citizens to physically visit Regional Transport Offices (RTOs).Online transport servicesVehicle fitness certificate

@parivahansewaportal
Copy link

The  Parivahan Sewa portal is a key digital initiative from the Ministry of Road Transport and Highways (MoRTH). Its goal is to make a wide range of transport-related services modern, easy to access, and transparent for everyone in India. This comprehensive online platform helps you avoid frequent trips to the Regional Transport Office (RTO) for essential tasks.

@rajap-web
Copy link

Any one find the Correct source. Please help me to find the Source. Anyone Have Source Code to Scrap Data.
Please Share Me

@Sardheesh-9230
Copy link

IT IS NOT WORKING IT OCCURS INTERNAL SERVER ERROR

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment