需要先单位推荐你去申报,盖公章。
还真被我找到了,我百度网盘发给你。
通过网盘分享的文件:QCC_AIRTEST_PROJECTS.rar
链接: https://pan.baidu.com/s/1OzuWTyA5Rg22pQYy9o-FIg?pwd=nssf 提取码: nssf,你尽快下载,1 天有效期。
python: 更新版
# smart_scan_upload.py —— 扫码上传助手
import os, socket, qrcode, cgi, urllib.parse, shutil, datetime
from http.server import HTTPServer, BaseHTTPRequestHandler
from pathlib import Path
UPLOAD_DIR = "uploads"
DOWNLOAD_DIR = "to_phone"
os.makedirs(UPLOAD_DIR, exist_ok=True)
os.makedirs(DOWNLOAD_DIR, exist_ok=True)
class Handler(BaseHTTPRequestHandler):
def log_message(self, *args): pass
def send_html(self, html, status=200):
self.send_response(status)
self.send_header("Content-type", "text/html; charset=utf-8")
self.end_headers()
self.wfile.write(html.encode('utf-8'))
def do_GET(self):
if self.path == '/':
self.send_html('''
<meta name="viewport" content="width=device-width">
<h2>🚀 扫码助手</h2>
<a href="/upload" style="display:block;margin:15px;padding:12px;background:#007AFF;color:white;text-decoration:none;border-radius:8px;">📤 上传文件</a>
<a href="/download" style="display:block;margin:15px;padding:12px;background:#34C759;color:white;text-decoration:none;border-radius:8px;">📥 下载PC文件</a>
<button onclick="let m=prompt('输入文字消息');m&&fetch('/text',{method:'POST',headers:{'Content-Type':'application/x-www-form-urlencoded'},body:'c='+encodeURIComponent(m)}).then(()=>alert('✅ 已发送'))" style="margin:15px;padding:12px;background:#FF9500;color:white;border:none;border-radius:8px;">💬 发文字</button>
''')
elif self.path == '/upload':
self.send_html(f'''
<meta name="viewport" content="width=device-width">
<h2>📤 上传文件</h2>
<form method="post" enctype="multipart/form-data" action="/upload">
<input type="file" name="files" multiple required><br><br>
<button type="submit" style="padding:10px 20px;background:#007AFF;color:white;border:none;border-radius:6px;">上传</button>
</form>
<a href="/">← 返回</a>
''')
elif self.path == '/download':
files = [f.name for f in Path(DOWNLOAD_DIR).iterdir() if f.is_file()]
links = ''.join(f'<li><a href="/f/{urllib.parse.quote(f)}">{f}</a></li>' for f in sorted(files))
self.send_html(f'''
<meta name="viewport" content="width=device-width">
<h2>📥 下载文件</h2>
<p>把文件放进电脑的 <code>{DOWNLOAD_DIR}</code> 文件夹即可下载。</p>
<ul>{links or "<li>暂无文件</li>"}</ul>
<a href="/">← 返回</a>
''')
elif self.path.startswith('/f/'):
fname = urllib.parse.unquote(self.path[3:])
path = os.path.join(DOWNLOAD_DIR, os.path.basename(fname))
if os.path.exists(path):
self.send_response(200)
self.send_header("Content-Disposition", f'attachment; filename="{os.path.basename(path)}"')
self.end_headers()
with open(path, 'rb') as f: shutil.copyfileobj(f, self.wfile)
else:
self.send_error(404)
else:
self.send_error(404)
def do_POST(self):
if self.path == '/upload':
form = cgi.FieldStorage(fp=self.rfile, headers=self.headers, environ={'REQUEST_METHOD': 'POST'})
files = form['files']
if not isinstance(files, list): files = [files]
for f in files:
if f.filename:
name = os.path.basename(f.filename)
base, ext = os.path.splitext(name)
counter = 1
save_path = os.path.join(UPLOAD_DIR, name)
while os.path.exists(save_path):
save_path = os.path.join(UPLOAD_DIR, f"{base}_{counter}{ext}")
counter += 1
with open(save_path, 'wb') as out: out.write(f.file.read())
print(f"📥 已保存: {save_path}")
self.send_html('<h3 style="color:green">✅ 上传成功!</h3><script>setTimeout(()=>location="/",2000)</script>')
elif self.path == '/text':
length = int(self.headers.get('Content-Length', 0))
body = self.rfile.read(length).decode()
msg = urllib.parse.parse_qs(body).get('c', [''])[0]
if msg.strip():
with open(os.path.join(UPLOAD_DIR, "messages.txt"), "a", encoding="utf-8") as log:
log.write(f"[{datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')}] {msg}\n")
print(f"💬 收到文字: {msg}")
self.send_html('<h3>✅ 文字已接收!</h3>')
else:
self.send_error(400)
def get_ip():
try:
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.connect(("8.8.8.8", 80))
ip = s.getsockname()[0]
s.close()
return ip
except: return "127.0.0.1"
if __name__ == "__main__":
import sys
port = 8081
ip = get_ip()
url = f"http://{ip}:{port}"
print("🚀 扫码上传助手已启动!")
print(f"📁 文件保存在当前目录的 'uploads' 文件夹")
print(f"📤 想让手机下载PC文件?把文件放进 'to_phone' 文件夹\n")
qr = qrcode.QRCode(); qr.add_data(url); qr.print_ascii(invert=True)
print(f"\n🌐 手机扫码地址: {url}\n")
print("⏳ 等待上传...(按 Ctrl+C 停止)\n")
HTTPServer(('', port), Handler).serve_forever()
已经好久不用了,等以后工作上需要我再单独写吧。
我说一个副业,做政府项目评审。
正常去评审一个政府项目,是半天时间,劳务费是 500 块钱,如果是稍微复杂的大型的项目,需要评审一天,劳务费 1000 快。
如何做:进入政府专家库,成为评审专家,系统会自动抽取,抽到你就可以去参加评审了。
不一样,经过我的逻辑处理,类似用 excel 写测试用例那样的形式
感谢你的建议!Flask 确实是一个非常优秀的 Web 框架,用它来构建有具体业务逻辑的 API 非常方便快捷。
不过,我们的具体需求场景略有不同。我们主要是需要一个 “挡板” 服务(Mock Server),它的核心作用是被动接收来自外部系统持续推送的各种数据,并能够记录和展示这些接收到的信息,而不是提供预设好的、固定的接口响应。这个服务本身不包含任何特定的具体业务逻辑,只是作为一个数据接收器和日志记录器。
执行力太强了
恭喜恭喜,我还没考
如果你对这些问题感到没有思路,这很正常,尤其是在面对算法问题或者编程问题时。这些问题需要一定的逻辑思维和对编程语言的熟悉度。以下是一些可能的原因和建议,希望能帮助你更好地理解和解决这些问题:
target_sum - num)。以下是对这三个问题的解答:
问题 1:最长公共前缀
def longest_common_prefix(strs):
if not strs:
return ""
# 按照字典序对字符串数组进行排序
strs.sort()
# 只需比较第一个字符串和最后一个字符串的公共前缀
first_str = strs[0]
last_str = strs[-1]
common_prefix = []
for i in range(min(len(first_str), len(last_str))):
if first_str[i] == last_str[i]:
common_prefix.append(first_str[i])
else:
break
return "".join(common_prefix)
# 测试示例
strs = ["flower", "flow", "flight"]
print(longest_common_prefix(strs)) # 输出:fl
问题 2:找出和为 100 的数字对
def count_pairs_with_sum(numbers, target_sum):
count = 0
seen = set()
for num in numbers:
complement = target_sum - num
if complement in seen:
count += 1
seen.add(num)
return count
# 测试示例
numbers = [1, 15, 35, 55, 65, 85, 99]
target_sum = 100
print(count_pairs_with_sum(numbers, target_sum)) # 输出:2
问题 3:不重复的三位数
import itertools
def count_unique_three_digit_numbers(digits):
# 使用排列生成所有可能的三位数
permutations = itertools.permutations(digits, 3)
unique_numbers = set()
for perm in permutations:
# 将排列的数字拼接成三位数
number = int("".join(map(str, perm)))
unique_numbers.add(number)
return len(unique_numbers)
# 测试示例
digits = [1, 8, 0, 3]
print(count_unique_three_digit_numbers(digits)) # 输出:18
开眼界了
以下是本次有奖征文活动的帖子列表,按照符合征文格式要求和不符合征文格式要求两类进行,点赞数降序排列,前三名已用加粗突出显示。
前三名的作者 :@Miangliang2610 @jideluo @varqiao
前三名的作者 :@ShaoNianyr @kangaroo @JHY
| 点赞数 | 帖子链接 |
|---|---|
| 25 | https://testerhome.com/topics/41210 |
| 9 | https://testerhome.com/topics/41259 |
| 4 | https://testerhome.com/topics/41415 |
应该差不多的,你可以网上看看其他人写的,现在应该有很多了。
我们公司前段时间,刚招了一个之前自己独立创业开测试培训公司的人,所以不要担心,都有可能
点赞,执行力真强

有什么办法不让服务器扫描我这么多文件夹吗?如果 HOME 里面默认啥都没有就好了。
第四点我解释下,我在自己本机部署了,然后发现文件服务器上面把我当前 C 盘下的所有文件夹和文件都展示出来了。我是工作电脑,只有一个 C 盘,所以想了解下,如何让文件服务器不展示当前 C 盘的所有目录信息,比如部署后,希望的结果是,打开文件服务器,应该里面啥都没有,是一个空的目录这种。
网络不稳定,多试试几次
我正好有个需求要实现:我想部署在公司内部,但是提供给非本公司的外部同事(下游客户和第三方供应商)访问并下载文件进行打印。
有几个问题请教:
1、上传的文件都是存在公司内部的局域网的吗?
2、如果要进行外部客户跨域访问,岂不是要搞一个外部云服务?
3、外部客户只能查看和下载文件,不可以进行删除,现在是否支持啊?
4、我刚试了下,发现服务器上展示了我本机所有的文件夹及文件,能否仅展示空数据呢?并且只能是我自己上传的文件才会展示出来?
随时随地想用就用,也没有个人隐私暴露风险。
我也来试试,让它给我搞个小工具
深圳两套房,厉害了,还没房贷
需要发在社区上才行
目前是小电驴通勤,不闯红灯正常行驶的话,单程是 30-40 分钟;闯红灯 40 码,单程大概 20 分钟左右。
周一至周五,不打卡
上午
8:30-11:30
中午
11:30-13:00
下午
13:00-17:00