Fetch is use to get information about anything on the shell using Wikipedia.

Overview

Fetch

Search wikipedia article on command line


Why this?

Fetch helps you to quickly look about anything and it is all possible with wikipidea webscrapping you can get full wikipedia article on the topic or you can also look at the introduction about the topic.

Yes you can look about anything on your terminal no need of browser it makes your life easy.

You can also search your topics on your command line

Support the project

You can support the project by just using it and contributing if you have any great idea about it.

If you like my work, consider buying me a coffee.

Requirements

  • Python 3.6
  • bs4

Installation

  1. Install setuptools if it isn't already:

     pip install setuptools

Note: For Linux use pip3

  1. Clone this repo:

    git clone https://github.com/yashsinghcodes/fetch.git   
  2. Move into the fetch directory and run the setup.py script:

    cd fetch
    python setup.py install

Note: For Linux use python3 as it required python 3 or higher

Usage

usage: fetch [-h] [-s SEARCH] [-i INFO] [-q QUICK]

optional arguments:
  -h, --help            show this help message and exit
  -s SEARCH, --search SEARCH
                        Search any topic
  -i INFO, --info INFO  Get info on any topic(Use correct name)
  -q QUICK, --quick QUICK
                        Get the summary on any topic
Comments
  • wik Random Article Feature

    wik Random Article Feature

    Any interest in including a random wikipedia article feature in wik? I have a basic version of this working but can clean it up and make a PR if you're interested.

    opened by reyg3 3
  • Replace setup.py with flit-flavored pyproject.toml

    Replace setup.py with flit-flavored pyproject.toml

    The name field in the project section should be a PyPI-ready name, and I don't know what is best (fetch being occupied already), but I set it to yash-fetch.

    opened by AndydeCleyre 3
  • Fetch is a very common unix tool

    Fetch is a very common unix tool

    The fetch command has been a fundamental part of the FreeBSD operating system and other OSs for decades. By naming your project fetch, you risk causing lots of confusion. Perhaps wikifetch or something would be a better choice? I love the idea and want to have a command line wikipedia tool!

    opened by jepace 2
  • adding random Wikipedia article feature

    adding random Wikipedia article feature

    Adding getRand() to info.py. Also updated wik.py with CLI option -x since Wikipedia has alt+shift+x random article shortcut. I didn't update README since I wasn't sure if you wanted to use a different CLI option instead of -x.

    opened by reyg3 1
  • wik is *not* a

    wik is *not* a "command based wiki"

    The README opens with:

    wik is command based wiki.

    A wiki is a website where anyone can edit the pages. Wikipedia is one such website. MediaWiki is software for hosting it. Github provides a simple wiki for every project you host (this project even has one: https://github.com/yashsinghcodes/wik/wiki).

    wik is (as far as I can see) a tool to view Wikipedia pages from your terminal. The README should say this.

    opened by rjmunro 1
  • Add possibility to specify article language

    Add possibility to specify article language

    Either detect language when full url is passed to -S (br.wikipedia.org) or add a language option which changes the language in the hard coded url here: https://github.com/yashsinghcodes/wik/blob/main/wik/info.py#L42

    opened by IljaN 1
  • No such file or directory: 'fetch/__version__.py'

    No such file or directory: 'fetch/__version__.py'

    Traceback (most recent call last): File "setup.py", line 12, in <module> exec(open("fetch/__version__.py").read()) FileNotFoundError: [Errno 2] No such file or directory: 'fetch/__version__.py'

    I had to create fetch/__version__.py and put my current python version in it. For example

    __version__ = "3.8.10"

    This info should be added to the README.

    opened by ringl-student 1
  • Unable to use a pager

    Unable to use a pager

    It's not possible to pipe output of fetch to a file or a pager

    fetch -i mallard | less -R

    Traceback (most recent call last):
      File "/usr/local/bin/fetch", line 11, in <module>
        load_entry_point('yashsinghcodes==0.1', 'console_scripts', 'fetch')()
      File "/usr/lib/python3.6/site-packages/pkg_resources/__init__.py", line 476, in load_entry_point
        return get_distribution(dist).load_entry_point(group, name)
      File "/usr/lib/python3.6/site-packages/pkg_resources/__init__.py", line 2700, in load_entry_point
        return ep.load()
      File "/usr/lib/python3.6/site-packages/pkg_resources/__init__.py", line 2318, in load
        return self.resolve()
      File "/usr/lib/python3.6/site-packages/pkg_resources/__init__.py", line 2324, in resolve
        module = __import__(self.module_name, fromlist=['__name__'], level=0)
      File "<frozen importlib._bootstrap>", line 971, in _find_and_load
      File "<frozen importlib._bootstrap>", line 955, in _find_and_load_unlocked
      File "<frozen importlib._bootstrap>", line 656, in _load_unlocked
      File "<frozen importlib._bootstrap>", line 626, in _load_backward_compatible
      File "/usr/local/lib/python3.6/site-packages/yashsinghcodes-0.1-py3.6.egg/fetch/__init__.py", line 4, in <module>
      File "<frozen importlib._bootstrap>", line 971, in _find_and_load
      File "<frozen importlib._bootstrap>", line 955, in _find_and_load_unlocked
      File "<frozen importlib._bootstrap>", line 656, in _load_unlocked
      File "<frozen importlib._bootstrap>", line 626, in _load_backward_compatible
      File "/usr/local/lib/python3.6/site-packages/yashsinghcodes-0.1-py3.6.egg/fetch/fetch.py", line 3, in <module>
      File "<frozen importlib._bootstrap>", line 971, in _find_and_load
      File "<frozen importlib._bootstrap>", line 955, in _find_and_load_unlocked
      File "<frozen importlib._bootstrap>", line 656, in _load_unlocked
      File "<frozen importlib._bootstrap>", line 626, in _load_backward_compatible
      File "/usr/local/lib/python3.6/site-packages/yashsinghcodes-0.1-py3.6.egg/fetch/info.py", line 18, in <module>
    OSError: [Errno 25] Inappropriate ioctl for device
    

    In fetch/info.py I changed

    width,height = os.get_terminal_size()

    to

    try:
        width,height = os.get_terminal_size()
    except OSError:
        width = 120
        height = 80
    

    to get it to work

    opened by pmopmo 1
  • Config file for pyup.io

    Config file for pyup.io

    Hi there and thanks for using pyup.io!

    Since you are using a non-default config I've created one for you.

    There are a lot of things you can configure on top of that, so make sure to check out the docs to see what I can do for you.

    opened by pyup-bot 0
  • Initial Update

    Initial Update

    The bot created this issue to inform you that pyup.io has been set up on this repo. Once you have closed it, the bot will open pull requests for updates as soon as they are available.

    opened by pyup-bot 0
  • Feature Request: Work with offline ZIM files/kiwix

    Feature Request: Work with offline ZIM files/kiwix

    It would be really nice to be able to use wik in conjunction with local offline wikipedia dumps. I'm not a programmer but I'm a big command line enthusiast and I tried modifying the wiki URL in info.py to the local one I'm running. It will display an article when giving the exact name but doesn't return any results when searching. I'm clearly out of my element here :) but it doesn't appear to be too far away from being able to do it. Thoughts?

    opened by klundry 3
Releases(2021.06)
Owner
Yash Singh
Yash Singh
A command-line tool to upload local files and pastebin pastes to your mega account, without signing in anywhere

A command-line tool to upload local files and pastebin pastes to your mega account, without signing in anywhere

ADI 4 Nov 17, 2022
A CLI for advanced management of your notes with simple commands

PyNoteManager This is a CLI for advanced management of your notes with simple co

3 Dec 30, 2021
An easy-to-bundle GTK terminal emulator.

EasyTerm An easy-to-bundle GTK terminal emulator. This project is meant to be used as a dependency for other

Bottles 4 May 15, 2022
Double Pendulum visualised with fetching system information in Python.

Show off your terminal, in style. A nice relaxing double pendulum simulation using ASCII, able to simulate multiple pendulums at once, and provide tra

Nekurone 62 Dec 14, 2022
A command line connect 4 game against a minimax agent.

A command line connect 4 game against a minimax agent.

1 Oct 17, 2021
A simple CLI tool for converting logs from Poker Now games to other formats

🂡 Poker Now Log Converter 🂡 A command line utility for converting logs from Poker Now games to other formats. Introduction Poker Now is a free onlin

6 Dec 23, 2022
Yts-cli-streamer - A CLI movie streaming client which works on yts.mx API written in python

YTSP It is a CLI movie streaming client which works on yts.mx API written in pyt

1 Feb 05, 2022
CLI tool that helps manage shell libraries.

shmgr CLI tool that helps manage shell libraries. Badges 📛 project status badges: version badges: tools / frameworks used by test suite (i.e. used by

Bryan Bugyi 0 Dec 15, 2021
Fun project to generate The Matrix Code effect on you terminal.

Fun project to generate The Matrix Code effect on you terminal.

Henrique Bastos 11 Jul 13, 2022
(BionicLambda Universal SHell) A simple shell made in Python. Docs and possible C port incoming.

blush 😳 (BionicLambda Universal SHell) A simple shell made in Python. Docs and possible C port incoming. Note: The Linux executables were made on Ubu

3 Jun 30, 2021
My dotfiles -My configuration, with installations steps.

.dotfiles My configuration, with installations steps. Installation Oh My ZSH Install with this command: sh -c "$(curl -fsSL https://raw.githubusercont

Luca Angioloni 4 Dec 14, 2022
Pyreadline3 - Windows implementation of the GNU readline library

pyreadline3 The pyreadline3 package is based on the stale package pyreadline loc

32 Jan 06, 2023
Detect secret in source code, scan your repo for leaks. Find secrets with GitGuardian and prevent leaked credentials. GitGuardian is an automated secrets detection & remediation service.

GitGuardian Shield: protect your secrets with GitGuardian GitGuardian shield (ggshield) is a CLI application that runs in your local environment or in

GitGuardian 1.2k Jan 06, 2023
GanTTY - Project planning from the terminal

GanTTY - Project planning from the terminal

Timeo Sam Pochin 161 Dec 26, 2022
A Terminal Client for MySQL with AutoCompletion and Syntax Highlighting.

mycli A command line client for MySQL that can do auto-completion and syntax highlighting. HomePage: http://mycli.net Documentation: http://mycli.net/

dbcli 10.7k Jan 07, 2023
Dead simple CLI tool to try Python packages - It's never been easier! :package:

try - It's never been easier to try Python packages try is an easy-to-use cli tool to try out Python packages. Features Install specific package versi

Timo Furrer 659 Dec 28, 2022
A simple command line tool for changing the icons of folders or files on MacOS.

Mac OS File Icon Changer Description A small and simple script to quickly change large amounts or a few files and folders icons to easily customize th

Eroxl 3 Jan 02, 2023
🐍 Python CLI tool to get public information from a GitHub account

🐍 Gitter 🐍 Python CLI tool to get public information from a GitHub account 🤔 What's this? Gitter is a open-source project created to easily uses th

opp? 3 Oct 14, 2022
A clone of the popular online game Wordle

wordle_clone A CLI application for wordle. Description A clone of the popular online game Wordle.

0 Jan 29, 2022
🔖 Lemnos: A simple, light-weight command-line to-do list manager.

🔖 Lemnos: CLI To-do List Manager This is a simple program that allows one to manage a to-do list via the command-line. Example $ python3 todo.py add

Rohan Sikand 1 Dec 07, 2022