-
Notifications
You must be signed in to change notification settings - Fork 17
Expand file tree
/
Copy pathSpider_Callback.py
More file actions
53 lines (41 loc) · 1.28 KB
/
Copy pathSpider_Callback.py
File metadata and controls
53 lines (41 loc) · 1.28 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
# -*- coding: utf-8 -*-
# @Time : 2017/7/21 11:48
# @Author : 卧槽
# @Site :
# @File : Spider_Callback.py
# @Software: PyCharm
from requests import Request, Session
from requests.exceptions import ReadTimeout, Timeout
queue = []
session = Session()
class CallBackRequest(Request):
def __init__(self, url, callback, method='GET', headers=None, timeout=3, proxy=None, params=None, data=None):
Request.__init__(url, method, headers)
self.callback = callback
self.timeout = timeout
self.proxy = proxy
self.params = params
self.data = data
def request(CallBackRequest):
try:
if CallBackRequest.proxy:
proxy = get_proxy()
if proxy:
proxies = {
'https': proxy,
'http' : proxy
}
return session.send(CallBackRequest.prepare(),
proxies=proxies,
timeout=CallBackRequest.timeout,
allow_redirects=False)
pass
if CallBackRequest.params:
pass
if CallBackRequest.data:
pass
except Exception as err:
print(err.args)
pass
def get_proxy():
pass