ecourts
Python library to help scrape Indian Court Orders from the ecourts website
Science Score: 67.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 8 DOI reference(s) in README -
✓Academic publication links
Links to: zenodo.org -
○Committers with academic emails
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (11.5%) to scientific vocabulary
Keywords from Contributors
Repository
Python library to help scrape Indian Court Orders from the ecourts website
Basic Info
- Host: GitHub
- Owner: openjustice-in
- License: gpl-3.0
- Language: Python
- Default Branch: main
- Size: 490 KB
Statistics
- Stars: 30
- Watchers: 2
- Forks: 7
- Open Issues: 15
- Releases: 6
Metadata Files
README.md
This is a information retrieval toolkit to fetch case information from the ECourts Service. This is primarily meant for journalists, and law researchers who need bulk access to the ECourts website to get orders, judgements, or lists of cases that match their criteria.
The final goal is to cover all services under the ecourts.gov.in domain, but it currently
supports a few services covered at https://hcservices.ecourts.gov.in/ecourtindiaHC/.
It covers all the High Courts and their various benches.
Type of Query | Supported | Inputs --------------|-----------|------- Search for cases by Case Number | 🚧WIP | Case Type, Case Number, Year Search for cases by FIR Number | 🚧WIP | Police Station, FIR Number†, Year†, Case Status (Pending/Disposed/Both)† Search for cases by Party Name | 🔜Planned | Petitioner/Respondent Name, Year†, Case Status (Pending/Disposed/Both)† Search for cases by Advocate Name | 🚫No Search for cases by Filing Number | 🚧WIP | Filing Number, Year Search for cases by Act | ✅Yes | Act Type, Status Search for cases by Case Type | 🚧WIP | Case Type, Year†, Pending/Disposed Search for Case Orders/Judgement by Case Number | 🚧WIP | Case Type, Case Number, Year Search for Case Orders/Judgement by Filling Number | 🚧WIP | Filing Number, Year Search for Case Orders/Judgement by Judge Wise | 🚫No | Search for Case Orders/Judgement by Party Name | 🔜Planned | Petitioner/Respondent Name, Year Search for Case Orders/Judgement by Order Date | ✅Yes | Date Get Cause List | ✅Yes | Date|
† - Optional
Case Types
Each of the individual courts use their own numbering system for various case-types. So the same type of case might have different ID depending on the court. This can even vary between various benches of the same High Court. For example, HCB (Habeas Corpus Petition) is numbered the following different ways across various courts (not exhaustive):
Court |ID ------|---- Madras High Court - Principal Bench| 22 Madras High Court - Madurai Bench | 164 High Court of Jammu and Kashmir - Jammu Wing|17 High Court of Jammu and Kashmir - Srinagar Wing|171
As such, before doing any kind of work that relies on case type (such as fetching case details, or orders by case type) - you must get the relevant case type idenfiers. You can run:
ecourts get-case-type --state-code SC [--court-code CC] to
get the case type identifiers for a particular court. If the
state-code/court-code identifiers are not provided, the case types will
be fetched for all known courts. A list of all known courts is available
at courts.csv published as part of the source code.
Act Types
Similar to Case Types, Act idenfiers are different between courts. You can use
ecourts get-act-type --state-code SC [--court-code CC]
to get the act type identifiers for a particular court.
Types
The primary two classes that most users will deal with are Court, and ECourt. A court is one of the high court benches covered at https://hcservices.ecourts.gov.in/ecourtindiaHC/, and an ECourt is the primary class that deals with the website.
Other entities involved are more legal in nature:
- Case
- CaseType
- ActType
- FIR
- Hearing
- Objection
- Order - An order or judgement in a case.
- Party - Either a petitioner or a responded to a case.
- Court
- ECourt APIs are also documented.
Documentation
- Canonical link for the project is https://openjustice-in.github.io/ecourts/.
- General guidance is available via
ecourts --helporecourts cmd --help. - Python documentation is available at openjustice-in.github.io/ecourts/src.
- Coverage reports are published at Coveralls.
Guiding Principles
- Make it easy to fetch case information.
- Store information in accessible formats, for easy retrieval and querying.
- Use standard identifiers, such as ISO-3166 for state codes.
- Be nice to the ecourts website. Retry failed requests, but do not hammer the site. In case of 5xx errors, wait for a while before retrying.
Citation
If you use this for any research purposes, please use the following citation information.
DOI: https://doi.org/10.5281/zenodo.13324986
You can check various citation formats on the Zenodo Website
or on GitHub by clicking "Cite this repository". Since this is a dynamic software - it
depends on the ecourts website, please cite the Zenodo ID 13324986 as it will always
point to the latest version of the software.
LICENSE
Licensed under GPL3-or-later. If you run this code, you are responsible
for the legal implications of the same. The tool is intentionally
single-threaded, and does not offer any parallelism. This is to avoid
overloading the ecourts website servers, which are already
quite slow. Please note sections 15-16 of the LICENSE, which are summarized here:
There is no warranty for the program, to the extent permitted by
applicable law. In no event unless required by applicable law or agreed to in
writing will any copyright holder, or any other party who modifies and/or
conveys the program as permitted above, be liable to you for damages,
including any general, special, incidental or consequential damages arising
out of the use or inability to use the program.
As part of GPL3 obligations:
You may copy, distribute and modify the software as long as you track changes/dates in source files. Any modifications to this code must also be made available under the GPL along with build & install instructions.
Owner
- Name: Open Justice India
- Login: openjustice-in
- Kind: organization
- Location: India
- Website: https://openjustice-in.github.io/
- Repositories: 1
- Profile: https://github.com/openjustice-in
Opening up law datasets in India.
Citation (CITATION.cff)
cff-version: 1.2.0
title: ecourts
message: >-
If you use this software, please cite it using the
metadata from this file.
type: software
authors:
- given-names: Abhay
family-names: Rana
email: ecourts@captnemo.in
orcid: 'https://orcid.org/0000-0002-7993-1363'
repository-code: 'https://github.com/openjustice-in/ecourts'
url: 'https://openjustice-in.github.io/ecourts/'
identifiers:
- type: DOI
value: 10.5281/zenodo.13324986
repository-artifact: 'https://pypi.org/project/ecourts/'
abstract: >-
ecourts is a information retrieval tool for Indian High
Courts.
keywords:
- ecourts
- legal-research
- india
- judiciary
- information-retrieval
- scraping
license: GPL-3.0-or-later
GitHub Events
Total
- Issues event: 1
- Watch event: 19
- Delete event: 15
- Issue comment event: 2
- Push event: 18
- Pull request event: 37
- Fork event: 7
- Create event: 22
Last Year
- Issues event: 1
- Watch event: 19
- Delete event: 15
- Issue comment event: 2
- Push event: 18
- Pull request event: 37
- Fork event: 7
- Create event: 22
Committers
Last synced: 7 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| Nemo | me@c****n | 87 |
| dependabot[bot] | 4****] | 26 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 6 months ago
All Time
- Total issues: 5
- Total pull requests: 10
- Average time to close issues: 17 days
- Average time to close pull requests: less than a minute
- Total issue authors: 1
- Total pull request authors: 1
- Average comments per issue: 0.2
- Average comments per pull request: 0.0
- Merged pull requests: 7
- Bot issues: 0
- Bot pull requests: 10
Past Year
- Issues: 0
- Pull requests: 10
- Average time to close issues: N/A
- Average time to close pull requests: less than a minute
- Issue authors: 0
- Pull request authors: 1
- Average comments per issue: 0
- Average comments per pull request: 0.0
- Merged pull requests: 7
- Bot issues: 0
- Bot pull requests: 10
Top Authors
Issue Authors
- captn3m0 (1)
- Donnie (1)
Pull Request Authors
- dependabot[bot] (15)
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- PyYAML ~=6.0
- requests ~=2.31
- dependabot/fetch-metadata v2.1.0 composite
- actions/checkout v4 composite
- actions/configure-pages v5 composite
- actions/deploy-pages d6db90164ac5ed86f2b6aed7e0febac5b3c0c03e composite
- actions/setup-python v5 composite
- actions/upload-pages-artifact 56afc609e74202658d3ffba0e8f6dda462b719fa composite
- jaywcjlove/markdown-to-html-cli main composite
- actions/checkout v4 composite
- actions/setup-python v5 composite
- actions/checkout 692973e3d937129bcbf40652eb9f2f61becf3332 composite
- actions/download-artifact fa0a91b85d4f404e444e00e005971372dc801d16 composite
- actions/setup-python 39cd14951b08e74b54015e9e001cdefcf80e669f composite
- actions/upload-artifact 834a144ee995460fba8ed112a2fc961b36a5ec5a composite
- pypa/gh-action-pypi-publish ec4db0b4ddc65acdf4bff5fa45ac92d78b56bdf0 composite
- sigstore/gh-action-sigstore-python 61f6a500bbfdd9a2a339cf033e5421951fbc1cd2 composite