https://github.com/machinia/fake-proxy
Library that finds public proxies
https://github.com/machinia/fake-proxy
proxies proxies-scraper proxy proxy-list proxypool scrape scraping scraping-python scraping-websites software-development systems
Last synced: 10 days ago
JSON representation
Library that finds public proxies
- Host: GitHub
- URL: https://github.com/machinia/fake-proxy
- Owner: machinia
- License: mit
- Created: 2019-09-07T04:45:13.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2019-09-18T13:31:58.000Z (over 6 years ago)
- Last Synced: 2026-03-12T22:54:17.049Z (about 1 month ago)
- Topics: proxies, proxies-scraper, proxy, proxy-list, proxypool, scrape, scraping, scraping-python, scraping-websites, software-development, systems
- Language: Python
- Homepage:
- Size: 32.2 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.rst
- License: LICENSE
Awesome Lists containing this project
README
fake-proxy
==========
Open source library that finds public proxies from several sources.
Usage
-----
The package must be imported and used through it's API.
`get(amount, proxy_type)`
~~~~~~~~~~~~~~~~~~~~~~~~~
The main function is `get`, which receives 2 parameters:
- `amount` which specifies the amount of proxies required
- `proxy_type` which specifies the type of proxy (https, http, socks4)
.. code-block:: python
>>> import fake_proxy
>>> fake_proxy.get()
[{'ip': '188.166.83.20', 'port': '3128', 'country_code': 'NL', 'country': 'Netherlands', 'type': 'http'}]
>>> fake_proxy.get(amount=3)
[{'ip': '89.20.135.204', 'port': '10000', 'country_code': 'RU', 'country': 'Russian Federation', 'type': 'http'},
{'ip': '165.22.154.157', 'port': '3128', 'country_code': 'US', 'country': 'United States', 'type': 'http'},
{'ip': '62.182.206.19', 'port': '37715', 'country_code': 'RU', 'country': 'Russian Federation', 'type': 'http'}]
>>> fake_proxy.get(proxy_type='https')
[{'ip': '36.92.108.150', 'port': '3128', 'country_code': 'ID', 'country': 'Indonesia', 'type': 'https'}]
`get_by_source(source_name, amount, proxy_type)`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Similar to `get()`, but lets you specify a particular source from which to obtain a proxy.
- `source_name`: name of the source from which to get a proxy
- `amount`: specifies the amount of proxies required
- `proxy_type`: specifies the type of proxy (https, http, socks4)
.. code-block:: python
>>> import fake_proxy
>>> fake_proxy.get_from_source(source_name='free-proxy-list.net', amount=2, proxy_type='http')
[{'ip': '76.87.101.188', 'port': '38875', 'country_code': 'US', 'country': 'United States', 'type': 'http'},
{'ip': '62.182.206.19', 'port': '37715', 'country_code': 'RU', 'country': 'Russian Federation', 'type': 'http'}]
`proxy_sources()`
~~~~~~~~~~~~~~~~~
Returns a list with the names of all the sources from which the library fetches proxies.
.. code-block:: python
>>> import fake_proxy
>>> fake_proxy.proxy_sources()
{'https': ['free-proxy-list.net'],
'socks4': ['socks-proxy.net'],
'http': ['free-proxy-list.net']}
`reload()`
~~~~~~~~~~
Fetches new proxies from the proxy sources.
Sources
-------
For the moment, the library fetches the proxies from the following sources:
+------------------------------+-------------+
| Source URL | Proxy Types |
+==============================+=============+
| https://free-proxy-list.net/ | HTTP, HTTPS |
+------------------------------+-------------+
| https://www.sslproxies.org/ | HTTPS |
+------------------------------+-------------+
| https://www.socks-proxy.net/ | SOCKS4 |
+------------------------------+-------------+
Installation
------------
Latest release through PyPI:
.. code-block:: sh
$ pip install fake-proxy
Development version:
.. code-block:: sh
$ git clone git@github.com:machinia/fake-proxy.git
$ cd fake-proxy
$ pip install -e .
Contribution
------------
Contributions are welcome! Feel free to report bugs or open an issue if you feel a new feature is needed. Pull requests are welcome!