如何通过PyScript访问同目录服务器文件?解决主机不可达报错
解决PyScript读取同目录文件时的"Host is unreachable"错误
问题根源
你遇到的错误主要来自两个常见原因:
- 硬编码完整URL可能存在主机地址错误,或是直接用
file://协议打开home.html,浏览器的安全策略会阻止这类跨域文件读取请求 - 未通过本地HTTP服务器访问页面,导致PyScript无法正常发起文件请求
解决步骤
- 用相对路径替代完整URL
因为目标文件和home.html在同一目录,直接写文件名即可,无需硬编码完整URL。修改后的代码示例:
import urllib.request url = "你的文件名" # 比如data.txt,直接填写同目录下的文件名 try: req = urllib.request.Request(url=url) with urllib.request.urlopen(req, timeout=120) as response: data = response.read().decode('utf-8') # 这里可添加数据处理逻辑,比如打印或解析内容 print(data) except Exception as e: print(f"读取失败:{str(e)}")
- 通过本地HTTP服务器访问页面
不要直接双击home.html打开,而是启动本地服务器:
- 打开终端,进入
home.html所在的目录 - 运行命令:
python -m http.server 8000 - 在浏览器中访问
http://localhost:8000/home.html,此时PyScript就能正常读取同目录下的文件了
内容的提问来源于stack exchange,提问作者Claudio
相关产品推荐
相关产品推荐

