zoukankan      html  css  js  c++  java
  • python fake_useragent模块 user-agent的获取

    1. UserAgent 模块使用

    from fake_useragent import UserAgent
    
    ua = UserAgent()  # 实例化,实例化时需要联网但是网站不太稳定
    
    print(ua.ie)       # 随机打印一个 ie 浏览器的头
    print(ua.random)   # 随机打印 User-Agent

    2. 模块下载

    pip install fake-useragent

    3. 查看 fake-useragent 模块下载 User-Agent 的下载地址

    下载地址:
    	http://d2g6u4gh6d9rq0.cloudfront.net/browsers/fake_useragent_0.1.10.json
    
    最后的 fake_useragent_0.1.10.json 中的  0.1.10 指的是版本
    
    查看版本
    	https://pypi.org/project/fake-useragent/
    	// 也是模块,文档

    4. 查看 fake-useragent 模块下载 User-Agent 的下载地址

    下载地址:
    	http://d2g6u4gh6d9rq0.cloudfront.net/browsers/fake_useragent_0.1.10.json
    
    最后的 fake_useragent_0.1.10.json 中的  0.1.10 指的是版本
    
    查看版本
    	https://pypi.org/project/fake-useragent/
    	// 也是模块,文档
    

    如何查看:

    F:pyenvpa_chong_envLibsite-packagesfake_useragentsettings.py
    

    就在 模块的 fake_useragent 的配置文件settings.py 文件中

    5. 将User-Agent 全部下载

     5.1. 下载

    import requests
    
    url = "http://d2g6u4gh6d9rq0.cloudfront.net/browsers/fake_useragent_0.1.10.json"
    
    response = requests.get(url)
    
    with open("user_agent.json", 'w') as fp:
        fp.write(response.text)

    5.2. 封装一个随机类

    从文件中筛选出指定的值

    import json
    import random
    
    class User_Agent(object):
        """
            直接将 网页的源码复制下载之后, 可以使用此类进行解析
            self.user_agent_data 是 读取 文件的,
        """
        def __init__(self, json_file="user_agent.json"):
            """
            :param json_file: 下载后内容保存的文件
            """
            self.json_file = json_file
            self.ua_data = self.user_agent_data().get("browsers")
            self.b = ['chrome', 'opera', 'firefox', 'safari', 'internetexplorer']
            # -------
            self.chrome = lambda: random.choice(self.ua_data.get("chrome"))
            self.opera = lambda:  random.choice(self.ua_data.get("opera"))
            self.firefox = lambda: random.choice(self.ua_data.get("firefox"))
            self.safari = lambda: random.choice(self.ua_data.get("safari"))
            self.ie = lambda: random.choice(self.ua_data.get("internetexplorer"))
            self.random = lambda: random.choice(self.ua_data.get(random.choice(self.b)))
    
        def user_agent_data(self):
            with open(self.json_file, "r") as fp:
                data = fp.read()
            return json.loads(data)
    
    ua = User_Agent()
    
    for i in range(10):
        print(ua.random())
    
  • 相关阅读:
    专题1
    HDU-6968(DP,和DP)
    ios环境下H5 input 选择图片在函数回调中失效的问题
    vue自定义组件的坑:数组绑定与引号的使用
    关于布局的胡言乱语
    flex布局小结
    微信小程序中overflow:scroll失效的问题
    微信小程序图片的比例问题
    vue用多了反而疏忽了选择器的使用
    在vue项目中做一个类ctrl+f的搜索功能
  • 原文地址:https://www.cnblogs.com/dream4567/p/9206403.html
Copyright © 2011-2022 走看看