Add maxlaw PC spider and shared proxy limiter
This commit is contained in:
@@ -23,6 +23,7 @@ from request.proxy_config import get_proxies, report_proxy_status
|
||||
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
|
||||
|
||||
from Db import Db
|
||||
from utils.rate_limiter import request_slot
|
||||
|
||||
DOMAIN = "律图"
|
||||
LIST_URL = "https://m.64365.com/findLawyer/rpc/FindLawyer/LawyerRecommend/"
|
||||
@@ -144,7 +145,8 @@ class Six4365Spider:
|
||||
def _post(self, payload: Dict[str, str], max_retries: int = 3) -> Optional[str]:
|
||||
for attempt in range(max_retries):
|
||||
try:
|
||||
resp = self.session.post(LIST_URL, data=payload, timeout=10, verify=False)
|
||||
with request_slot():
|
||||
resp = self.session.post(LIST_URL, data=payload, timeout=10, verify=False)
|
||||
status_code = resp.status_code
|
||||
text = resp.text
|
||||
resp.close()
|
||||
@@ -301,7 +303,8 @@ class Six4365Spider:
|
||||
session = self._get_thread_session()
|
||||
for attempt in range(max_retries):
|
||||
try:
|
||||
resp = session.get(url, timeout=10, verify=False)
|
||||
with request_slot():
|
||||
resp = session.get(url, timeout=10, verify=False)
|
||||
status_code = resp.status_code
|
||||
text = resp.text
|
||||
resp.close()
|
||||
|
||||
Reference in New Issue
Block a user