使用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月前
|
数据采集 缓存 JavaScript
​DrissionPage,Python浏览器自动化又一神器~
​DrissionPage,Python浏览器自动化又一神器~
150 1
|
5月前
|
数据库 Python
【Azure 应用服务】App Service中运行Python 编写的 Jobs,怎么来安装Python包 (pymssql)呢?
【Azure 应用服务】App Service中运行Python 编写的 Jobs,怎么来安装Python包 (pymssql)呢?
|
7月前
|
数据采集 Web App开发 iOS开发
自定义User-Agent:使用Python Requests进行网络请求
自定义User-Agent:使用Python Requests进行网络请求
|
8月前
|
搜索推荐 数据安全/隐私保护 iOS开发
基于Python的自媒体小助手---图形用户界面Graphical User Interface)
基于Python的自媒体小助手---图形用户界面Graphical User Interface)
53 0
|
8月前
|
数据采集 Web App开发 API
Python中User-Agent的重要作用及实际应用
Python中User-Agent的重要作用及实际应用
|
Go API 数据安全/隐私保护
Grafana的自动登入(Go和Python分别实现)
Grafana的自动登入(Go和Python分别实现)
377 1
Grafana的自动登入(Go和Python分别实现)
|
Python
python 随机获取UA(User-Agent)
python 随机获取UA(User-Agent)
784 0
|
Python
使用python获取各种手机的User-Agent,测试用
使用python获取各种手机的User-Agent,测试用
279 0
|
Web App开发 存储 安全
Python模拟网站登陆
本篇推文会涉及到requests和lxml库的使用,同时需要读者对于cookie和session有一定的了解(没有了解也不影响本文的阅读),虽然我没有用到"re"模块,但是我用到了lxml中的xpath,因此若读者能对正则表达式有一定的了解,可能会更加随心应手,我会在文章最后对相关知识做以补充.
Python模拟网站登陆
|
Python
Python:使用user-agents库解析浏览器信息
Python:使用user-agents库解析浏览器信息
190 0