# Libgenbot
[![Hits](https://hits.seeyoufarm.com/api/count/incr/badge.svg?url=https%3A%2F%2Fgithub.com%2Fsuhan-paradkar%2FLibgenbot&count_bg=%2379C83D&title_bg=%23555555&icon=&icon_color=%23E7E7E7&title=hits&edge_flat=false)](https://hits.seeyoufarm.com)
[![forthebadge made-with-python](http://ForTheBadge.com/images/badges/made-with-python.svg)](https://www.python.org/)
[![PyPI version](https://badge.fury.io/py/Libgenbot.svg)](https://badge.fury.io/py/Libgenbot)
Libgenbot is a Bot written in Python to download PDFs from libgen.
It is a fork of PyPaperBot, and is inspired by it
Please leave feedback and report issues
## Installation
Use pip to install LibgenBot
```
pip3 install Libgenbot
```
For builds with latest changes
```
git clone https://github.com/suhan-paradkar/Libgenbot.git
pip3 install -r requirements.txt
python3 setup.py install
```
## Installation in termux
First, you need to be subscribed into its-pointless repo
```
pkg up
pkg install wget git
wget https://its-pointless.github.io/setup-pointless-repo.sh
chmod +x setup-pointless-repo.sh
./setup-pointless-repo.sh
```
Now, you need to install numpy
```
pkg install numpy
```
Now, install pandas.... It takes a bit long time... so have a cup of tea
```
export CFLAGS="-Wno-deprecated-declarations -Wno-unreachable-code"
pip install pandas
```
Now, install using pip
```
pip install Libgenbot
```
For builds with latest changes
```
git clone https://github.com/suhan-paradkar/Libgenbot.git
pip install -r requirements.txt
python setup.py install
```
## Usage
| Arguments | Description | Type |
| ------------------ | ---------------------------------------------------------------------------------------- | ------ |
| `--query` | Query to make on Libgen page | string |
| `--genre` | select genre: one of 'libgen(Sci-Tech)[1]''Scientific articles[2]' 'Fiction[3]' . Is a must when using libgen | Int |
| `--scholar-query` | Query to be made on the Google Scholar page | string |
| `--doi` | DOI of the paper to download (this option uses only SciHub to download) | string |
| `--doi-file` | File .txt containing the list of paper's DOIs to download | string |
| `--libgen-pages` | Number or range of Libgen pages to inspect. Contains variable no. of pages | string |
| `--scholar-pages` | Number or range of Google Scholar pages to inspect. Each page has a maximum of 10 papers | string |
| `--libgen-results` | Number of papers to download. Useful When \-\-libgen-pages=1 | int |
| `--scholar-results`| Number of papers to download. Useful When \-\-scholar-pages=1 | int |
| `--dwn-dir` | Directory path in which to save the result | string |
| `--min-year` | Minimal publication year of the paper to download | int |
| `--max-dwn-year` | Maximum number of papers to download sorted by year | int |
| `--max-dwn-cites` | Maximum number of papers to download sorted by number of citations | int |
| `--journal-filter` | CSV file path of the journal filter . Only works on Scholar | string |
| `--restrict` | 0:Download only Bibtex - 1:Down load only papers PDF | int |
| `--scihub-mirror` | Mirror for downloading papers from sci-hub. If not set, it is selected automatically | string |
| `--proxy` | Use Proxychains. Provide a seperated list of proxies (See below) | string |
| `-h` | Shows the help | -- |
## Note
You can use only one of the arguments in the following groups
`--query`, `--scholar-query` `--doi-file`, and `--doi`
`--max-dwn-year` and `and max-dwn-cites`
One of the arguments `--doi`, `--query`, `--scholar-query` , and `--file` is mandatory
The arguments `--scholar-pages` is mandatory when using `--scholar-query`
The argument `--dwn-dir` is mandatory.
The argument `--genre` is mandatory when using `--query`
The argument `--journal-filter` require the path of a CSV containing a list of journal name paired with a boolean which indicates whether or not to consider that journal (0: don't consider /1: consider)
The argument `--doi-file` require the path of a txt file containing the list of paper's DOIs to download organized with one DOI per line.
The argument `--proxy` must be used at the end of the command. The protocol used and the port must be mentioned.
#### Usage of Proxy
```
Libgenbot --query=rheumatoid+arthritis --libgen-pages=1 --libgen-results=20 --genre=1 --dwn-dir=documents/ --proxy http://1.1.1.1:8080 http://8.0.8.0:8024
```
Raw data
{
"_id": null,
"home_page": "https://github.com/suhan-paradkar/Libgenbot",
"name": "Libgenbot",
"maintainer": "",
"docs_url": null,
"requires_python": "",
"maintainer_email": "",
"keywords": "download-papers,google-scholar,libgen,scihub,scholar,crossref,papers",
"author": "Suhan G Paradkar",
"author_email": "suhangp2002@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/2a/19/299e6f5abcc1d278af9f6a6462b59fdb79b17f8f496c3b3f861cdb8f226d/Libgenbot-1.1.4.tar.gz",
"platform": null,
"description": "# Libgenbot\n[![Hits](https://hits.seeyoufarm.com/api/count/incr/badge.svg?url=https%3A%2F%2Fgithub.com%2Fsuhan-paradkar%2FLibgenbot&count_bg=%2379C83D&title_bg=%23555555&icon=&icon_color=%23E7E7E7&title=hits&edge_flat=false)](https://hits.seeyoufarm.com)\n\n[![forthebadge made-with-python](http://ForTheBadge.com/images/badges/made-with-python.svg)](https://www.python.org/)\n\n[![PyPI version](https://badge.fury.io/py/Libgenbot.svg)](https://badge.fury.io/py/Libgenbot)\n\nLibgenbot is a Bot written in Python to download PDFs from libgen.\nIt is a fork of PyPaperBot, and is inspired by it\nPlease leave feedback and report issues\n\n## Installation\n\nUse pip to install LibgenBot\n\n```\npip3 install Libgenbot\n```\n\nFor builds with latest changes\n\n```\ngit clone https://github.com/suhan-paradkar/Libgenbot.git\npip3 install -r requirements.txt\npython3 setup.py install\n```\n\n## Installation in termux\n\nFirst, you need to be subscribed into its-pointless repo\n\n```\npkg up\npkg install wget git\nwget https://its-pointless.github.io/setup-pointless-repo.sh\nchmod +x setup-pointless-repo.sh\n./setup-pointless-repo.sh\n```\n\nNow, you need to install numpy\n\n```\npkg install numpy\n```\n\nNow, install pandas.... It takes a bit long time... so have a cup of tea\n\n```\nexport CFLAGS=\"-Wno-deprecated-declarations -Wno-unreachable-code\"\npip install pandas\n```\n\nNow, install using pip\n\n```\npip install Libgenbot\n```\n\nFor builds with latest changes\n\n```\ngit clone https://github.com/suhan-paradkar/Libgenbot.git\npip install -r requirements.txt\npython setup.py install\n```\n\n## Usage\n\n| Arguments | Description | Type |\n| ------------------ | ---------------------------------------------------------------------------------------- | ------ |\n| `--query` | Query to make on Libgen page | string |\n| `--genre` | select genre: one of 'libgen(Sci-Tech)[1]''Scientific articles[2]' 'Fiction[3]' . Is a must when using libgen | Int |\n| `--scholar-query` | Query to be made on the Google Scholar page | string |\n| `--doi` | DOI of the paper to download (this option uses only SciHub to download) | string |\n| `--doi-file` | File .txt containing the list of paper's DOIs to download | string |\n| `--libgen-pages` | Number or range of Libgen pages to inspect. Contains variable no. of pages | string | \n| `--scholar-pages` | Number or range of Google Scholar pages to inspect. Each page has a maximum of 10 papers | string |\n| `--libgen-results` | Number of papers to download. Useful When \\-\\-libgen-pages=1 | int |\n| `--scholar-results`| Number of papers to download. Useful When \\-\\-scholar-pages=1 | int | \n| `--dwn-dir` | Directory path in which to save the result | string |\n| `--min-year` | Minimal publication year of the paper to download | int |\n| `--max-dwn-year` | Maximum number of papers to download sorted by year | int |\n| `--max-dwn-cites` | Maximum number of papers to download sorted by number of citations | int |\n| `--journal-filter` | CSV file path of the journal filter . Only works on Scholar | string |\n| `--restrict` | 0:Download only Bibtex - 1:Down load only papers PDF | int |\n| `--scihub-mirror` | Mirror for downloading papers from sci-hub. If not set, it is selected automatically | string |\n| `--proxy` | Use Proxychains. Provide a seperated list of proxies (See below) | string |\n| `-h` | Shows the help | -- |\n\n## Note\n\nYou can use only one of the arguments in the following groups\n\n `--query`, `--scholar-query` `--doi-file`, and `--doi` \n `--max-dwn-year` and `and max-dwn-cites`\n\nOne of the arguments `--doi`, `--query`, `--scholar-query` , and `--file` is mandatory\nThe arguments `--scholar-pages` is mandatory when using `--scholar-query`\nThe argument `--dwn-dir` is mandatory.\nThe argument `--genre` is mandatory when using `--query`\n\nThe argument `--journal-filter` require the path of a CSV containing a list of journal name paired with a boolean which indicates whether or not to consider that journal (0: don't consider /1: consider)\n\nThe argument `--doi-file` require the path of a txt file containing the list of paper's DOIs to download organized with one DOI per line.\n\nThe argument `--proxy` must be used at the end of the command. The protocol used and the port must be mentioned. \n\n#### Usage of Proxy\n\n```\nLibgenbot --query=rheumatoid+arthritis --libgen-pages=1 --libgen-results=20 --genre=1 --dwn-dir=documents/ --proxy http://1.1.1.1:8080 http://8.0.8.0:8024\n```\n",
"bugtrack_url": null,
"license": "GPL-3.0",
"summary": "Libgenbot is a Python tool for downloading articles from Libgen, inspired by PyPaperBot.",
"version": "1.1.4",
"split_keywords": [
"download-papers",
"google-scholar",
"libgen",
"scihub",
"scholar",
"crossref",
"papers"
],
"urls": [
{
"comment_text": "",
"digests": {
"md5": "9bb6e42b5d8a551873af70871883e8ac",
"sha256": "be79e3285efac69e4023c63d9579a2b31fa652aa46ec6ccaa72b623bedd012a5"
},
"downloads": -1,
"filename": "Libgenbot-1.1.4-py3-none-any.whl",
"has_sig": false,
"md5_digest": "9bb6e42b5d8a551873af70871883e8ac",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 28578,
"upload_time": "2022-12-08T04:09:54",
"upload_time_iso_8601": "2022-12-08T04:09:54.667267Z",
"url": "https://files.pythonhosted.org/packages/ce/90/b2f127d55199eca6ed949a15ffc15be6eb029a075128d547198420dfb741/Libgenbot-1.1.4-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "c304fea1041a0d58aa0a701f0bb432b5",
"sha256": "e68b8ee31232c12a3ebca9fb4cb45a83b8f4179ba1b4fe7dfbb0be6da3d21590"
},
"downloads": -1,
"filename": "Libgenbot-1.1.4.tar.gz",
"has_sig": false,
"md5_digest": "c304fea1041a0d58aa0a701f0bb432b5",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 24639,
"upload_time": "2022-12-08T04:09:57",
"upload_time_iso_8601": "2022-12-08T04:09:57.096070Z",
"url": "https://files.pythonhosted.org/packages/2a/19/299e6f5abcc1d278af9f6a6462b59fdb79b17f8f496c3b3f861cdb8f226d/Libgenbot-1.1.4.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2022-12-08 04:09:57",
"github": true,
"gitlab": false,
"bitbucket": false,
"github_user": "suhan-paradkar",
"github_project": "Libgenbot",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [
{
"name": "astroid",
"specs": []
},
{
"name": "beautifulsoup4",
"specs": [
[
">=",
"4.9.1"
]
]
},
{
"name": "bibtexparser",
"specs": [
[
">=",
"1.2.0"
]
]
},
{
"name": "certifi",
"specs": [
[
">=",
"2020.6.20"
]
]
},
{
"name": "chardet",
"specs": [
[
">=",
"3.0.4"
]
]
},
{
"name": "colorama",
"specs": [
[
">=",
"0.4.3"
]
]
},
{
"name": "crossref-commons",
"specs": [
[
">=",
"0.0.7"
]
]
},
{
"name": "future",
"specs": [
[
">=",
"0.18.2"
]
]
},
{
"name": "HTMLParser",
"specs": [
[
">=",
"0.0.2"
]
]
},
{
"name": "idna",
"specs": [
[
">=",
"2.10"
],
[
"<",
"4"
]
]
},
{
"name": "isort",
"specs": [
[
">=",
"5.4.2"
]
]
},
{
"name": "lazy-object-proxy",
"specs": [
[
">=",
"1.4.3"
]
]
},
{
"name": "mccabe",
"specs": [
[
">=",
"0.6.1"
]
]
},
{
"name": "numpy",
"specs": []
},
{
"name": "pandas",
"specs": []
},
{
"name": "proxy.py",
"specs": [
[
">=",
"2.0.0"
]
]
},
{
"name": "pylint",
"specs": [
[
">=",
"2.6.0"
]
]
},
{
"name": "pyparsing",
"specs": [
[
">=",
"2.4.7"
]
]
},
{
"name": "python-dateutil",
"specs": [
[
">=",
"2.8.1"
]
]
},
{
"name": "pytz",
"specs": [
[
">=",
"2020.1"
]
]
},
{
"name": "ratelimit",
"specs": [
[
">=",
"2.2.1"
]
]
},
{
"name": "requests",
"specs": [
[
">=",
"2.24.0"
]
]
},
{
"name": "six",
"specs": [
[
">=",
"1.15.0"
]
]
},
{
"name": "soupsieve",
"specs": [
[
">=",
"2.0.1"
]
]
},
{
"name": "toml",
"specs": [
[
">=",
"0.10.1"
]
]
},
{
"name": "urllib3",
"specs": [
[
">=",
"1.25.10"
]
]
},
{
"name": "wrapt",
"specs": [
[
">=",
"1.12.1"
]
]
}
],
"lcname": "libgenbot"
}