Skip to main content

Proxy scraper for further use

Project description

Free-proxy

Get free working proxy from https://www.sslproxies.org/ and use it in your script

FreeProxy class scrapes proxies from https://www.sslproxies.org/ and checks if proxy is working. There is possibility to filter proxies by country and acceptable timeout. You can also randomize list of proxies from where script would get first working proxy.

You can use it in sending request through custom proxy, with selenium or wherever you want.

Returns proxy as string:

'http://113.160.218.14:8888'

Requirements

  • Python3
  • Request library
  • Lxml library

Installation

pip install free-proxy

asciicast

Usage with examples

First import Free Proxy that way:

from fp.fp import FreeProxy

Options

Parameter Type Example Default value
country_id list ['US', 'BR'] None
timeout float > 0 0.1 0.5
rand bool True False
anonym bool True False
elite bool True False
proxy = FreeProxy().get()
  • country_id parameter Get first working proxy from specified list of countries. If there is no valid proxy from specified list check all countries
proxy = FreeProxy(country_id=['US', 'BR']).get()
  • timeout parameter Timeout is parameter for checking if proxy is valid. If test site doesn't respond in specified time script marks this proxy as invalid. Default timeout=0.5. You can change it by defining specified timeout eg. timeout=1.
proxy = FreeProxy(timeout=1).get()
proxy = FreeProxy(rand=True).get()
  • anonym parameter Return only those proxies that are marked as anonymous. Defaults to anonym=False
proxy = FreeProxy(anonym=True).get()
  • elite parameter Return only those proxies that are marked as 'elite proxy'. Defaults to elite=False.
proxy = FreeProxy(elite=True).get()

Note that elite proxies is anonymous at the same time, thus anonym=True automatically when elite=True.

You can combine parameters:

proxy = FreeProxy(country_id=['US', 'BR'], timeout=0.3, rand=True).get()

If there is no working proxy script returns There are no working proxies at this time. message.

CHANGELOG


[1.0.5] - 2022-01-07

  • Added elite parameter
  • Add exception class and raise exception instead of system exit
  • Change lxml version to 4.6.5

[1.0.4] - 2021-11-13

  • Fix proxy list default length

[1.0.3] - 2021-08-18

  • Change XPatch due to SSL proxies page update
  • Change lxml version

[1.0.2] - 2020-09-03

  • Added anonym parameter

[1.0.1] - 2020-03-19

  • Fix typos in readme
  • Fix urrlib3 exception urllib3.exceptions.ProxySchemeUnknown: Not supported proxy scheme None,
  • Fix imports

[1.0.0] - 2019-02-04

  • Initial release

License


MIT

Free Software!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

free_proxy-1.0.5.tar.gz (4.4 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page