random_ua.py 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. # Default user agent, unless instructed by the user to change it.
  2. import os
  3. import random
  4. USER_AGENT = 'Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0)'
  5. # Load the list of valid user agents from the install folder.
  6. # The search order is:
  7. # * user_agents.txt.gz
  8. # * user_agents.txt
  9. # * default user agent
  10. try:
  11. install_folder = os.path.abspath(os.path.split(__file__)[0])
  12. try:
  13. user_agents_file = os.path.join(install_folder, 'user_agents.txt.gz')
  14. import gzip
  15. fp = gzip.open(user_agents_file, 'rb')
  16. try:
  17. user_agents_list = [_.strip() for _ in fp.readlines()]
  18. finally:
  19. fp.close()
  20. del fp
  21. except Exception:
  22. user_agents_file = os.path.join(install_folder, 'user_agents.txt')
  23. with open(user_agents_file) as fp:
  24. user_agents_list = [_.strip() for _ in fp.readlines()]
  25. except Exception:
  26. user_agents_list = [USER_AGENT]
  27. # Get a random user agent.
  28. def get_random_user_agent():
  29. """
  30. Get a random user agent string.
  31. :rtype: str
  32. :return: Random user agent string.
  33. """
  34. return random.choice(user_agents_list)
  35. def main():
  36. print(get_random_user_agent())
  37. if __name__ == "__main__":
  38. main()