Advertisement
Guest User

Untitled

a guest
Oct 19th, 2019
117
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.98 KB | None | 0 0
  1. import functools
  2. import json
  3.  
  4. def set_headers_decorator(func):
  5.     @functools.wraps(func)
  6.     def wrapper(*args, **kwargs):
  7.         kwargs.setdefault(
  8.             'headers',
  9.             {
  10.                  'user-agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.131 Safari/537.36',
  11.                  'accept-encoding': 'gzip, deflate, br',
  12.                 'accept-language': 'en-GB,en-US;q=0.9,en;q=0.8',
  13.             },
  14.         )
  15.         # another option
  16.         # kwargs.setdefault('headers', {})
  17.         # kwargs['headers'].update(...)
  18.  
  19.         # yet another option
  20.         # kwargs.setdefault('headers', {})
  21.         # for k, v in {...}.items():
  22.         #      kwargs['headers'].setdefault(k, v)
  23.  
  24.         return func(*args, **kwargs, headers=headers)
  25.     return wrapper
  26.  
  27. @set_headers_decorator
  28. def get_url(*args, **kwargs):
  29.     import requests
  30.     return requests.get(*args, **kwargs)
  31.  
  32. print(json.loads(get_url("http://ifconfig.co/json").content))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement