使用python获取各种手机的User-Agent,测试用

简介: 使用python获取各种手机的User-Agent,测试用

直接看代码吧:

# -*- coding: utf-8 -*-

import requests, json, re, os, sys, datetime, time, traceback , random
from contextlib import closing
from urllib.request import urlopen
from bs4 import BeautifulSoup
import schedule, threading


def downloadText(text, path):
        if os.path.exists(path):
            print(path + "文件已存在")
            return True
        try:
           with open(path, 'w',encoding='utf-8') as file:
              file.write(text)
              file.flush()
        except Exception:
           traceback.print_exc()
           print(path+'下载失败')
        else:
           print(path + '下载成功')

def readTxt(path):
    f = open(path,'r',encoding='utf-8')
    strTxt = f.read()
    f.close()
    return strTxt

def readLine(path):
    list_url = []
    with open(path, 'r',encoding='utf-8') as f:
        while True:
            line = f.readline()
            if not line:
                break
            list_url.append(line.replace('"\n',''))
        f.close()
    return list_url

def writeTxt(path,ua_str):
    with open(path, 'a+') as url:
        url.write(ua_str+'\n')
        url.close()


def getHtml(base_url,headers):
    response = requests.get(base_url,headers=headers, timeout=30)
    response.encoding = 'utf-8'
    html = response.text
    soup = BeautifulSoup(html,'lxml')
    return (html,soup)

def getUA(url):
    headers = {
        'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.143 Safari/537.36'
    }
    result = getHtml(url,headers)
    soup = result[1]
    ua_list = soup.select('table tr')
    for ua in ua_list:
        tds = ua.find_all('td')
        writeTxt(tds[2].text+'.txt',tds[3].text)
        

def run():
    base_url = 'http://www.fynas.com/ua/search?b=&k=&page='
    for page in range(1,51):
        url = base_url + str(page)
        try:
            getUA(url)
        except:
            pass
        time.sleep(random.choice(range(3,5)))
if __name__ == '__main__':    
    run()
    
相关文章
|
5天前
|
测试技术 Python
【手机群控】 利用Python与uiautomator2实现
使用Python的uiautomator2库进行多设备自动化测试,涉及环境准备(Python、uiautomator2、adb连接设备)和代码实现。通过`adb devices`获取设备列表,使用多进程并行执行测试脚本,每个脚本通过uiautomator2连接设备并获取屏幕尺寸。注意设备需开启USB调试并授权adb。利用多进程而非多线程,因Python的GIL限制。文章提供了一种提高测试效率的方法,适用于大规模设备测试场景。
13 2
【手机群控】 利用Python与uiautomator2实现
|
16天前
|
测试技术 Go Python
在python中测试应用
【6月更文挑战第29天】本文介绍Python的unittest是内置的单元测试框架,适合线性控制流的代码测试。并举实例说明,如何组织测试代码,如何构造脚手架和测试套件。
29 6
在python中测试应用
|
12天前
|
测试技术 Python
|
8天前
|
Java 测试技术 开发者
Python:使用标准库编写单元测试
在现代软件开发中,编写单元测试是确保代码质量和可靠性的重要步骤。Python 提供了一个内置的单元测试框架,称为 unittest,它可以帮助开发者方便地编写和运行测试。本文将详细介绍如何使用 unittest 编写单元测试。
|
13天前
|
测试技术 API 持续交付
【Python自动化测试】文章探讨了Python在测试领域的关键作用,分为三部分
【7月更文挑战第2天】【Python自动化测试】文章探讨了Python在测试领域的关键作用,分为三部分:1) 自动化测试的重要性与Python的易用性、库支持、跨平台和社区优势;2) Unittest作为标准测试框架的基础用法,及Pytest的灵活性与强大功能;3) 实践中包括Selenium的Web UI测试、Requests的API测试,强调测试隔离、持续集成等最佳实践。Python助力高效稳定的软件测试。
24 2
|
17天前
|
消息中间件 缓存 中间件
【赠书活动 - 第1期】- 测试工程师Python开发实战(异步图书出品)| 文末送书
【赠书活动 - 第1期】- 测试工程师Python开发实战(异步图书出品)| 文末送书
|
19天前
|
XML 测试技术 数据格式
软件测试之 自动化测试 基于Python语言使用Selenium、ddt、unitTest 实现自动化测试(下)
软件测试之 自动化测试 基于Python语言使用Selenium、ddt、unitTest 实现自动化测试(下)
29 3
|
19天前
|
Java 测试技术 程序员
软件测试之 自动化测试 基于Python语言使用Selenium、ddt、unitTest 实现自动化测试(上)
软件测试之 自动化测试 基于Python语言使用Selenium、ddt、unitTest 实现自动化测试(上)
37 1
|
1月前
|
存储 数据管理 测试技术
构建Python构建自动化测试框架(原理与实践)
当谈到软件质量保证时,自动化测试是一个不可或缺的步骤。Python作为一种简单易学的编程语言,具有丰富的测试框架和库,使得构建自动化测试框架变得相对简单。本文将介绍如何使用Python构建自动化测试框架,包括选择合适的测试框架、编写测试用例、执行测试和生成报告等方面。
构建Python构建自动化测试框架(原理与实践)
|
26天前
|
测试技术 Python
Python教程:利用timeit模块对代码进行性能测试
在Python中,了解代码的性能是优化和改进的关键。timeit模块是Python标准库中的一个工具,用于测量代码片段的执行时间。本文将介绍timeit模块的各种接口、命令行使用方法以及如何对代码中的函数或类进行性能测试。
25 3