Little Anchovy
Little Anchovy

Reputation: 25

How to stay connected in website using requests

I want to connect to a website with Proxy and stay connected there, for let's say 10 seconds.

My script:

import requests
url = 'http://WEBSITE.com/'

proxies ={'http': 'http://IP:PORT'}

s = requests.Session();
s.proxies.update(proxies)
s.get(url);

As much as I learnt, I came up with this script which connects to the website but I think it does not stay connected, what should I do so this script connects to the website with proxy and stays connected?

Upvotes: 1

Views: 977

Answers (1)

user11553043
user11553043

Reputation:

The Session object doesn't necessarily keep the connection alive. To that end this might work:

import requests


url = 'http://WEBSITE.com/'
proxies = {'http': 'http://IP:PORT'}
headers = {
    "connection" : "keep-alive",
    "keep-alive" : "timeout=10, max=1000"
}


s = requests.Session();
s.proxies.update(proxies)
s.get(url, headers=headers);

See connection, and keep-alive headers :)

edit: after reviewing the requests documentation, I learned that the Session object can also be used to store headers. Here is a slightly better answer:

import requests


url = 'http://WEBSITE.com/'
proxies = {'http': 'http://IP:PORT'}
headers = {
    "connection" : "keep-alive",
    "keep-alive" : "timeout=10, max=1000"
}


s = requests.Session()
s.proxies.update(proxies)
s.headers.update(headers)
s.get(url)

Upvotes: 2

Related Questions