Translation-gummy

Latest version: v4.0.1

Safety actively analyzes 628903 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 5 of 5

1.4.0

- Supported 25 journals.
- `NCBICrawler` (Previously named `PubMedCrawler`)
- `OxfordAcademicCrawler`
- `ScienceDirect`
- `SpringerCrawler`
- `MDPICrawler`
- `FEBSPRESSCrawler`
- `UniOKLAHOMACrawler`
- `LungCancerCrawler`
- `CellPressCrawler`
- `WileyOnlineLibraryCrawler`
- `JBCCrawler`
- `BiologistsCrawler`
- `BioMedCentralCrawler`
- `IEEEXploreCrawler`
- `JSTAGECrawler`
- `ACSPublicationsCrawler`
- `StemCellsCrawler`
- `KeioUniCrawler`
- `PLOSONECrawler`
- `frontiersCrawler`
- `RNAjournalCrawler`
- `IntechOpenCrawler`
- `NRCResearchPressCrawler`
- `SpandidosCrawler`
- `TaylorandFrancisOnlineCrawler`
- Supported 4 gateways.
- `_pass2sciencedirect`
- `_pass2springer`
- `_pass2wiley`
- `_pass2ieee`

TODO

- [ ] Display the figures 4
- [ ] LaTex dependencies.
- [x] Support other journals.
- [x] Support other gateways.
- [ ] Make a `Dockerfile`
- [ ] Make example notebooks (`notebook/`)

1.1.0

Main Updates

In this update, I engaged in adding the `journal_type`. If you want me support other journals, please send a DM. **Please press the button below:)**

<a href="https://www.twitter.com/messages/compose?recipient_id=1042783905697288193&text=Please%20support%20this%20journal%3A%20URL"><img src="https://pbs.twimg.com/media/CueS9k9UsAA5-Hj.png" width=200px alt="Send a DM"></a>

TODO

- [ ] Display the figures (tex) 4
- [ ] Support other journals. (**Support [PubMed](https://www.ncbi.nlm.nih.gov/pmc/)**)
- [ ] Support other gateways.
- [ ] Make a `Dockerfile`
- [ ] Make example notebooks (`notebook/`)

1.0.0

Initial Release

**Translation Gummy** is a **_magical gadget_** which enables user to be able to speak and understand other languages.

Quick example

- **Translation**:
- **Python Module:**
python
>>> from gummy import TranslationGummy
>>> gummy = TranslationGummy(translator="deepl")
DRIVER_TYPE: local
>>> gummy.en2ja("This is a pen.")
DeepLTranslator query no.1 01/15 [-------------------] 6.67% - 1.091[s]
'これはペンです。'

- **Command line:**
sh
$ gummy-translate "This is a pen."
[success] local driver can be built.
[failure] remote driver can't be built.
DRIVER_TYPE: local
DeepLTranslator query no.1 01/15 [-------------------] 6.67% - 1.096[s]
これはペンです。

- **Create PDF (with translation)**
- **Python Module:**
python
>>> from gummy import TranslationGummy
>>> gummy = TranslationGummy(gateway="utokyo", translator="deepl")
>>> pdfpath = gummy.toPDF(url="https://doi.org/10.1038/171737a0", delete_html=True)

- **Command line:**
sh
$ gummy-journal "https://doi.org/10.1038/171737a0"


Installation

1. Install **`Translation-Gummy`** (There are two ways to install):
- **Install from PyPI (recommended):**
sh
$ sudo pip install Translation-Gummy

- **Alternatively: install PyGuitar from the GitHub source:**
sh
$ git clone https://github.com/iwasakishuto/Translation-Gummy.git
$ cd Translation-Gummy
$ sudo python setup.py install

2. Install **`wkhtmltopdf`**
- **Debian/Ubuntu:**
sh
$ sudo apt-get install wkhtmltopdf

- **macOS:**
sh
$ brew install caskroom/cask/wkhtmltopdf

3. Install **driver** for `selenium`:
**`Selenium`** requires a driver to interface with the chosen browser, so please visit the [documentation](https://selenium-python.readthedocs.io/installation.html#drivers) to install it.
sh
Example: Chrome
visit "https://chromedriver.chromium.org/downloads" to check <Suitable.Driver.Version> for your chrome.
$ wget https://chromedriver.storage.googleapis.com/<Suitable.Driver.Version>/chromedriver_mac64.zip
$ unzip chromedriver_mac64.zip
$ mv chromedriver /usr/local/bin/chromedriver
$ chmod +x /usr/bin/chromedriver


Environment Variable

When you use `gateways`, you need to **set environment variables in `.env` file**, or call a function with keyword argument.

python
>>> from gummy import gateways
>>> from gummy.utils import get_driver
>>> gateway = gateways.get("utokyo")
TRANSLATION_GUMMY_UTOKYO_GATEWAY_USERNAME is not set.
TRANSLATION_GUMMY_UTOKYO_GATEWAY_PASSWORD is not set.
EnvVariableNotDefinedWarning: Please set environment variable in /Users/iwasakishuto/.gummy/.env


1. **Set environment variables in `.env` file.**
python
>>> from gummy.utils import where_is_envfile, show_environ, write_environ, read_environ
>>> default_dotenv_path = where_is_envfile()
>>> print(f"default dotenv path: '{default_dotenv_path}'")
default dotenv path: '/Users/iwasakishuto/.gummy/.env'

Write and update `.env` file.
>>> write_environ(
... TRANSLATION_GUMMY_UTOKYO_GATEWAY_USERNAME="username",
... TRANSLATION_GUMMY_UTOKYO_GATEWAY_PASSWORD="password",
>>> )
>>> show_environ(default_dotenv_path)
TRANSLATION_GUMMY_UTOKYO_GATEWAY_USERNAM = "username"
TRANSLATION_GUMMY_UTOKYO_GATEWAY_PASSWOR = "password"

Call with no kwargs.
>>> gateway = gateways.get("utokyo")
>>> with get_drive() as driver:
... driver = gateway.passthrough(driver)
... :

2. **Call a function with keyword argument.**
python
Call with kwargs.
>>> with get_drive() as driver:
... driver = gateway.passthrough(driver, username="username", password="password")
... :


Naming conventions

python
>>> ENV_VARNAMES = "{1}_{2}_GATEWAY_{3}"
1 = TRANSLATION_GUMMY_ENVNAME_PREFIX (Define gummy.utils.environ_utils.py)
2 = Uppercase of class name without 'GateWay'
3 = varnames, which is also the key of `keywargs`


<details>
<summary>Example</summary>

python
==============================================================================
gummy.utils.environ_utils.py
TRANSLATION_GUMMY_ENVNAME_PREFIX = "TRANSLATION_GUMMY"
gummy.gateways.py
class GummyAbstGateWay(metaclass=ABCMeta):
def __init__(self, url=None, verbose=1, env_varnames=[], dotenv_path=DOTENV_PATH):
self.env_varnames = [
TRANSLATION_GUMMY_ENVNAME_PREFIX + "_" + \
self.__class__.__name__.replace('GateWay', '').upper() + "_" + \
"GATEWAY_" + \
v.upper() for v in env_varnames
]
==============================================================================
>>> from gummy.gateways import GummyAbstGateWay
>>> class Hoge(GummyAbstGateWay):
... def __init__():
... super().__init__(env_varnames=["username"])
>>> hoge = Hoge()
>>> hoge.envvarnames = ["{1}_{2}_GATEWAY_{3}"]
1 = TRANSLATION_GUMMY_ENVNAME_PREFIX = "TRANSLATION_GUMMY"
2 = HOGE (= Hoge.upper())
3 = USERNAME (= username.upper())


</details>

TODO

- [ ] Display the figures (tex) 4
- [ ] Support other journals.
- [ ] Support other gateways.
- [ ] Make a `Dockerfile`
- [ ] Make example notebooks (`notebook/`)

0.1.2

Integrate `journals` and `gateways` to make it easier to use.

0.1.1

Add Abstract Class to each program:

- `GummyAbstGateWay`
- `GummyAbstJournal`
- `GummyAbstTranslator`

These class will be useful when you want to add your own functions.

TODO

- [ ] Display the figures 4
- [ ] Support other journals.
- [ ] Support other gateways.
- [ ] Make a `Dockerfile`
- [ ] Make example notebooks (`notebook/`)

0.0.1

This is a **very initial and simple** version of `Translation-Gummy`. Since the programs are too individualized for each `journal` and `translator`, it is hard to add or update functions.

Page 5 of 5

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.