当前位置: 首页 > wzjs >正文

各种类型网站建设口碑好无锡百度信息流

各种类型网站建设口碑好,无锡百度信息流,自己架设服务器建网站,门户移动网站建设有没有一种办法可以让我通过网页就能够实时查看远程电脑的程序运行情况呢?为此,我想到了利用python的Flask制作一个网页,然后通过cpolar,转变成一个互联网的网页,方便随时了解电脑的程序运行情况,比如百度网…

有没有一种办法可以让我通过网页就能够实时查看远程电脑的程序运行情况呢?为此,我想到了利用python的Flask制作一个网页,然后通过cpolar,转变成一个互联网的网页,方便随时了解电脑的程序运行情况,比如百度网盘下载多少文件了,python数据处理是否完成等等。

1.flask服务端:

# -*- coding: utf-8 -*-
"""
Created on Tue Jun 17 20:52:47 2025@author: YBK
"""from flask import Flask, render_template, send_file
import pyautogui
import os
import timeapp = Flask(__name__)@app.route('/')
def index():return render_template('jp.html')@app.route('/screenshot')
def take_screenshot():screenshot = pyautogui.screenshot()screenshot_path = os.path.join('static', 'screenshot.png')screenshot.save(screenshot_path)return send_file(screenshot_path, mimetype='image/png')@app.route('/switch_window')
def switch_window():pyautogui.hotkey('alt', 'tab')time.sleep(0.5)  # 等待窗口切换完成return 'OK'@app.route('/switch_window1')
def press_win_1():try:pyautogui.keyDown('win')time.sleep(0.1)  # 确保Win键按下pyautogui.press('1')pyautogui.keyUp('win')return 'OK'except Exception as e:print(f"操作失败: {str(e)}")return 'Err'@app.route('/switch_window2')
def press_win_2():try:pyautogui.keyDown('win')time.sleep(0.1)  # 确保Win键按下pyautogui.press('2')pyautogui.keyUp('win')return 'OK'except Exception as e:print(f"操作失败: {str(e)}")return 'Err'@app.route('/switch_window3')
def press_win_3():try:pyautogui.keyDown('win')time.sleep(0.1)  # 确保Win键按下pyautogui.press('3')pyautogui.keyUp('win')return 'OK'except Exception as e:print(f"操作失败: {str(e)}")return 'Err'@app.route('/switch_window4')
def press_win_4():try:pyautogui.keyDown('win')time.sleep(0.1)  # 确保Win键按下pyautogui.press('4')pyautogui.keyUp('win')return 'OK'except Exception as e:print(f"操作失败: {str(e)}")return 'Err'@app.route('/switch_window5')
def press_win_5():try:pyautogui.keyDown('win')time.sleep(0.1)  # 确保Win键按下pyautogui.press('5')pyautogui.keyUp('win')return 'OK'except Exception as e:print(f"操作失败: {str(e)}")return 'Err'@app.route('/switch_windowd')
def press_win_d():try:pyautogui.keyDown('win')time.sleep(0.1)  # 确保Win键按下pyautogui.press('d')pyautogui.keyUp('win')return 'OK'except Exception as e:print(f"操作失败: {str(e)}")return 'Err'@app.route('/switch_ct')
def switch_ct():pyautogui.hotkey('ctrl', 'tab')time.sleep(0.5)  # 等待窗口切换完成return 'OK'@app.route('/switch_csi')
def switch_csi():pyautogui.hotkey('ctrl', 'shift', 'i')time.sleep(0.5)  # 等待窗口切换完成return 'OK'
if __name__ == '__main__':app.run(host='127.0.0.1',debug=True,use_reloader=False)

2.放在templates的网页jp.html

<!DOCTYPE html>
<html>
<head><title>远程桌面控制</title><style>#image-container {width: 800px;height: 600px;border: 1px solid #ccc;margin: 20px auto;}#screenshot-img {max-width: 100%;max-height: 100%;}.button-container {text-align: center;margin: 20px;}button {padding: 10px 20px;margin: 0 10px;font-size: 16px;}</style>
</head>
<body><div class="button-container"><button id="screenshot-btn">截屏</button><button id="switch-btn">切换</button><button id="switch-btn1">Win+1</button><button id="switch-btn2">Win+2</button><button id="switch-btn3">Win+3</button><button id="switch-btn4">Win+4</button><button id="switch-btn5">Win+5</button><button id="switch-btnd">Win+D</button></div><div id="image-container"><img id="screenshot-img" src="" alt="截屏将显示在这里"></div><div class="button-container"><button id="switch-btnct">Ctrl+Tab</button><button id="switch-btncsi">Ctrl+Shift+I</button></div><script>document.getElementById('screenshot-btn').addEventListener('click', function() {fetch('/screenshot').then(response => response.blob()).then(blob => {const img = document.getElementById('screenshot-img');img.src = URL.createObjectURL(blob);});});document.getElementById('switch-btn').addEventListener('click', function() {fetch('/switch_window');});document.getElementById('switch-btn1').addEventListener('click', function() {fetch('/switch_window1');});document.getElementById('switch-btn2').addEventListener('click', function() {fetch('/switch_window2');});document.getElementById('switch-btn3').addEventListener('click', function() {fetch('/switch_window3');});document.getElementById('switch-btn4').addEventListener('click', function() {fetch('/switch_window4');});document.getElementById('switch-btn5').addEventListener('click', function() {fetch('/switch_window5');});document.getElementById('switch-btnd').addEventListener('click', function() {fetch('/switch_windowd');});document.getElementById('switch-btnct').addEventListener('click', function() {fetch('/switch_ct');});document.getElementById('switch-btncsi').addEventListener('click', function() {fetch('/switch_csi');});</script>
</body>
</html>

3.记得新建static文件夹在py程序的同个文件夹中。

4.使用cmd,运行cpolar http 5000

5.python提取cpolar公网地址,也就是4上面显示的网址,发送给你的微信。(用另外一个微信在服务器登录)

# -*- coding: utf-8 -*-
"""
Created on Sat Mar 22 11:17:27 2025@author: YBK
"""import requests
from bs4 import BeautifulSoup
import sys
import pyperclip
from wxauto import *
wx = WeChat()
who = '你的微信名'
# 登录网站并获取页面内容
def fetch_info_from_website(login_url, info_url, credentials, tunnel_name):with requests.Session() as session:try:# 获取登录页面以抓取csrf tokenlogin_page = session.get(login_url)login_page.raise_for_status() # 检查请求是否成功login_page_soup = BeautifulSoup(login_page.text, 'html.parser')# 提取csrf tokencsrf_token = login_page_soup.find('input', {'name': 'csrf_token'})['value']credentials['csrf_token'] = csrf_token# 登录print("登录中,请等待。")login_response = session.post(login_url, data=credentials)# 检查是否登录成功if login_response.status_code != 200 or login_response.url == login_url:print("登录失败,请检查您的凭据。")return []else:print("登录成功。")# 获取信息页面response = session.get(info_url)response.raise_for_status()# 解析页面soup = BeautifulSoup(response.text, 'html.parser')table = soup.find('table')if not table:print("未找到隧道列表,请检查对应设备的cpolar服务和网络连接。")return []links = [] # 用于存储找到的链接for row in table.find_all('tr')[1:]: # 跳过表头cells = row.find_all('td')if len(cells) > 1:tunnel = cells[0].get_text().strip()url_cell = row.find('a', href=True) # 直接在行中查找<a>标签if tunnel == tunnel_name and url_cell:links.append(url_cell['href']) # 添加匹配的链接print(f"找到隧道 {tunnel} 的链接: {url_cell['href']}")return linksexcept requests.RequestException as e:print(f"请求异常: {e}")except Exception as e:print(f"发生错误: {e}")
if __name__ == '__main__':login_url = "https://dashboard.cpolar.com/login"info_url = "https://dashboard.cpolar.com/status"credentials = {'login': '你的账号','password': '你的密码'}# 检查是否有命令行参数传入# if len(sys.argv) > 1:#   tunnel_name = sys.argv[1] # 第一个命令行参数作为隧道名称# else:#   print("请提供一个隧道名称作为参数,或者留空以自动提示输入。")#   tunnel_name = input("请输入隧道名称: ")#   if not tunnel_name:#     print("隧道名称不能为空。")#     sys.exit(1)tunnel_name = 'default'links = fetch_info_from_website(login_url, info_url, credentials, tunnel_name)if links:print(links[0])message = links[0]wx.SendMsg(message, who)pyperclip.copy(links[0])else:print(f"没有找到名为 {tunnel_name} 的隧道链接。")

运行界面:

PS:为了查看我的Spyder中程序的控制台,我加上了Ctrl+Tab和Ctrl+Shift+i,每一次按后都要按一下截屏,才会显示。

 

http://www.dtcms.com/wzjs/190454.html

相关文章:

  • 我想投诉做软件的网站新人学会seo
  • 广告公司简介介绍网络seo优化公司
  • 如何自己做视频网站制作网页
  • 建设网站建设网站站长工具查询域名信息
  • 自建服务器做网站seo站长工具是什么
  • 用模板做网站会被盗吗郑州网络营销推广公司
  • 网站建设流程及细节百度搜索引擎网址
  • 建网站需要钱吗今晚比分足球预测
  • 榆林做网站需要注意的几点网站建设价格
  • 无锡做网站的网络营销方式有哪些分类
  • 谢岗镇仿做网站陕西seo
  • 网站织梦如何让会员注册免费大数据平台
  • 怎么让自己的电脑做网站服务器全球十大网站排名
  • 好的空间网站北京seo案例
  • 网站代理登录seo排名优化资源
  • 图片制作动图新乡seo优化
  • 东莞虎门旅游景点推荐重庆网站seo服务
  • 桥梁建设 网站深圳网络推广招聘
  • 西安做网站的公司有哪些百度收录排名
  • 山东网站建设哪家专业百家号权重查询
  • 泰安网站营销推广网络seo
  • linux服务器下如何新建网站软文300字介绍商品
  • 安徽网站优化公司价格如何找到网络公关公司
  • 网站备案期间临时网页友情链接查询友情链接检测
  • 网站改版的方式seo关键词的选择步骤
  • 动态网站开发 教材网页版百度云
  • 模板网站制作在线网站排名工具
  • 空包网站怎么建设百度搜索推广怎么做
  • 如何给企业做网站东莞seo收费
  • 网站整站资源下载器破解版 无任何功能限制互联网营销师考试内容