flask查询工具

news2024/11/28 7:33:50

fist_index.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>电话查询工具</title>
</head>
<body>
    <table>
        <form action="/search_phone" method="get">
                手机号码:<input type="text" id="phone" value="phone" name="phone2">
                <input type="submit" id="search" value="查询" name="search">
         </form>
    </table>
</body>
</html>

searchPhone.py

import requests
from flask import Flask,render_template,request
from lxml import etree#解析数据模块

def get_phone(phone):
    url = f'https://www.ip138.com/mobile.asp?mobile={phone}&action=mobile'
    headers = {
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36'

        }  # 伪装浏览器访问,防止网站拒绝访问
    res = requests.get(url, headers=headers)
    res.encoding = 'utf-8'  # 有乱码,显示中文
    # print(res.text)
    # 解析数据
    e = etree.HTML(res.text)
    # 通过xpath拿取数据
    data = e.xpath('//tr/td[2]/a/text()')
    print(data)
    return data


get_phone(13811701936)

##前台页面展示接口
app=Flask(__name__)
@app.route('/index')
def index():
    #return '测试页面展示hahh'
    return render_template('fist_index.html')
@app.route('/search_phone')
def search_phone():
    #return "search_phone接口"
    phone3=request.args.get('phone2')#这里的phone2要和fist_index.html页面里的 手机号码<input 标签里的neme值一致
    data=get_phone(phone3)
    #return phone3
    #return data #原始data是个列表,有时候浏览器不能直接展示列表,会报错
    return '<br/>'.join(data)#原始data是个列表,有时候浏览器不能直接展示列表,会报错

app.run(debug=True)

展示:
在这里插入图片描述

13811701935
测吉凶(
)
中国移动
010
101100

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1008514.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

《PostgreSQL备份与恢复:步骤与最佳实践》

&#x1f337;&#x1f341; 博主猫头虎&#xff08;&#x1f405;&#x1f43e;&#xff09;带您 Go to New World✨&#x1f341; &#x1f405;&#x1f43e;猫头虎建议程序员必备技术栈一览表&#x1f4d6;&#xff1a; &#x1f6e0;️ 全栈技术 Full Stack: &#x1f4da…

将vue项目变成可发布的npm包项目

第一步&#xff1a; 在main.ts 文件的平级上新建一个index.ts文件 &#xff0c;文件中导出你想发布的组件 第二步&#xff1a; 在package.json文件的平级上新建index.js文件 第三步&#xff1a; 修改package.json文件&#xff0c;新增命令 "buildnpm": "vu…

c#设计模式-创建型模式 之 建造者模式

简介&#xff1a; 将一个复杂对象的构建与表示分离&#xff0c;使得同样的构建过程可以创建不同的表示。提供了一种创建对象的最佳方式。一个 Builder 类会一步一步构造最终的对象。该 Builder 类是独立于其他对象的。意图是将一个复杂的构建与其表示相分离&#xff0c;使得同样…

LeetCode_模拟_中等_2596.检查骑士巡视方案

目录 1.题目2.思路3.代码实现&#xff08;Java&#xff09; 1.题目 骑士在一张 n x n 的棋盘上巡视。在有效的巡视方案中&#xff0c;骑士会从棋盘的左上角出发&#xff0c;并且访问棋盘上的每个格子恰好一次 。 给你一个 n x n 的整数矩阵 grid &#xff0c;由范围 [0, n * …

SAP 委外联产品 如何分摊加工费 ?

SAP 委外联产品 如何分摊加工费 &#xff1f; 目前对委外联产品分摊加工费还没好办法&#xff0c;看上去与委外副产品业务是一样的&#xff0c;除了主数据设置多了一些。 委外物料与联产品物料都设置S价&#xff0c;跑物料分类账时根据主数据设置分摊规则将差异分摊到对应的物…

获取Windows 10中的照片(旧版)下载

Windows 10中的新版照片应用&#xff0c;目前发现无法直接打开部分iOS设备上存储的照片。需要使用照片&#xff08;旧版&#xff09;才行。 但目前应用商店中无法直接搜索到照片&#xff08;旧版&#xff09;&#xff0c;因此笔者提供如下链接&#xff0c;可以直接访问并呼出W…

Swift学习内容精选(二)

Swift 类是构建代码所用的一种通用且灵活的构造体。 我们可以为类定义属性&#xff08;常量、变量&#xff09;和方法。 与其他编程语言所不同的是&#xff0c;Swift 并不要求你为自定义类去创建独立的接口和实现文件。你所要做的是在一个单一文件中定义一个类&#xff0c;系…

详解带头双向循环列表

目录 前言 一、带头双向循环链表的结构 二、 带头双向循环链表的实现 2.1链表的创建 2.2开辟新的结点 2.3初始化 2.4释放销毁 2.5链表的打印 2.7尾插 2.8尾删 2.9头插 2.10头删 三、带头双向循环链表中间随机值的插入和删除 3.1在pos位置插入x 3.2删除pos位置的…

C#回调函数学习1

回调函数&#xff08;Callback Function&#xff09;是一种函数指针&#xff0c;它指向的是由用户自己定义的回调函数。我们将这个回调函数的指针作为参数传递给另外一个函数&#xff0c;在这个函数工作完成后&#xff0c;它将通过这个回调函数的指针来回调通知调用者处理结果。…

XREAL 联合创始人吴克艰谈AR:下一代计算平台及其关键技术

// 编者按&#xff1a;一种行业观点是&#xff0c;AR或是未来十年、三十年的革命性技术&#xff0c;是下一代计算平台。近半个世纪&#xff0c;我们总能听到苹果在AR行业的创新动作&#xff0c;开辟了新的硬件范式。AR/VR行业为苹果不断欢呼的同时&#xff0c;激发了人们的好…

JAVA设计模式8:装饰模式,动态地将责任附加到对象上,扩展对象的功能

作者主页&#xff1a;Designer 小郑 作者简介&#xff1a;3年JAVA全栈开发经验&#xff0c;专注JAVA技术、系统定制、远程指导&#xff0c;致力于企业数字化转型&#xff0c;CSDN博客专家&#xff0c;阿里云社区专家博主&#xff0c;蓝桥云课讲师。 目录 一、什么是装饰模式二、…

linux安装Sentinal1.8.6

前言&#xff1a; 使用docker search sentinel-dashboard命令&#xff0c;发现docker中的镜像版本过低&#xff0c;由于要配合使用1.8.6&#xff0c;所以这里采用java后台运行sentinel1.8.6-jar的方式。 1、官网下载对应版本jar&#xff08;https://github.com/alibaba/Sentin…

【Unity编辑器扩展】| 自定义窗口和面板

前言【Unity编辑器扩展】| 自定义窗口和面板一、EditorWindow二、ScriptableWizard三、编辑器绘制3.1 文本输入3.2 空行3.3 滑动条、进度条3.4 枚举选择3.5 其他总结前言 前面我们介绍了Unity中编辑器扩展的一些基本概念及基础知识,还有编辑器扩展中用到的相关特性Attribute介…

招募 AIGC 训练营助教 @上海

诚挚邀请对社区活动感兴趣的你&#xff0c;成为我们近期开展的训练营助教。 与我们共同开启这场创新之旅&#xff01; 助教需要参与&#xff1a; 协助策划和组织训练营活动 协助招募和筛选学员 协助制定训练营的宣传方案 负责协调和组织各项活动 助教可获得&#xff1a; AIGC知…

vue cli 打包、生产环境http-proxy-middleware代理

结构树 版本 1、创建vue.config.js const path require(path); const UglifyJsPlugin require(uglifyjs-webpack-plugin) //压缩 const CompressionWebpackPlugin require(compression-webpack-plugin) const isProduction process.env.NODE_ENV ! development;module.exp…

C#控制台程序中使用log4.net来输出日志

Apache log4net 库是一个帮助程序员将日志语句输出到各种输出目标的工具。log4net 是优秀的 Apache log4j™ 框架到 Microsoft .NE​​T 运行时的端口。 我喜欢他可以自定义输出&#xff0c;区分等级等特点。 导入库 我们在工程里添加NuGet的包。输入名称log4net &#xff0…

【Transformer系列】深入浅出理解Positional Encoding位置编码

一、参考资料 一文教你彻底理解Transformer中Positional Encoding Transformer Architecture: The Positional Encoding The Annotated Transformer Master Positional Encoding: Part I 如何理解Transformer论文中的positional encoding&#xff0c;和三角函数有什么关系&…

05ShardingSphere-JDBC水平分片

1、准备服务器 随着业务的扩大&#xff0c;订单表数据量不断增加&#xff0c;数据库面临存储压力&#xff0c;开始考虑对订单表进行水平分片。 将t_order表扩展为server-order0中的t_order0和t_order1、server-order1中的t_order0和t_order1 服务器规划&#xff1a;使用dock…

使用Python创建音乐播放器

1. 介绍 在本篇博客中&#xff0c;我们将介绍如何使用Python编程语言和wxPython模块创建一个简单的音乐播放器。我们将使用wxPython来构建用户界面&#xff0c;并借助pygame模块来实现音频播放的功能。 C:\pythoncode\new\quickplaywav.py 2. 使用方法 使用我们提供的源代码…

排查disabled问题之谷歌新版本特性

问题复现 最近我突然接手一个后台的bug&#xff0c;这个后台很久没有迭代更新了&#xff0c;我也不熟悉业务&#xff0c;所以只能看一下源码&#xff0c;问题很快就复现&#xff0c;测试的修复操作也很正确&#xff0c;就是因为渲染的input标签中存在disableddisabled’属性导…