decoder已不再使用
This commit is contained in:
parent
cf4a6e2854
commit
3e500afd15
@ -1,11 +0,0 @@
|
|||||||
FROM python:3.8.2-slim
|
|
||||||
ENV TZ Asia/Shanghai
|
|
||||||
ENV PATH /usr/local/bin:$PATH
|
|
||||||
WORKDIR /usr/local
|
|
||||||
RUN mkdir shipxy
|
|
||||||
COPY ./requirements.txt .
|
|
||||||
COPY shipxy ./shipxy
|
|
||||||
RUN pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple && cd shipxy && tar -zxvf static.tar.gz
|
|
||||||
EXPOSE 5000
|
|
||||||
WORKDIR /usr/local/shipxy
|
|
||||||
ENTRYPOINT [ "sh", "start.sh" ]
|
|
||||||
@ -1,3 +0,0 @@
|
|||||||
selenium~=3.141.0
|
|
||||||
Flask~=2.2.3
|
|
||||||
urllib3~=1.25.8
|
|
||||||
@ -1,86 +0,0 @@
|
|||||||
import selenium
|
|
||||||
from flask import Flask, render_template, request
|
|
||||||
from selenium import webdriver
|
|
||||||
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
|
|
||||||
from selenium.webdriver.firefox.options import Options
|
|
||||||
|
|
||||||
driver_options = Options()
|
|
||||||
driver_options.add_argument('--headless')
|
|
||||||
driver_options.add_argument('--no-sandbox')
|
|
||||||
browser = selenium.webdriver.remote.webdriver.WebDriver(command_executor="http://172.18.0.2:4444",
|
|
||||||
desired_capabilities=DesiredCapabilities.EDGE,
|
|
||||||
options=driver_options)
|
|
||||||
|
|
||||||
app = Flask(__name__)
|
|
||||||
|
|
||||||
|
|
||||||
@app.route('/')
|
|
||||||
def hello_world():
|
|
||||||
return 'shipxy decoder'
|
|
||||||
|
|
||||||
|
|
||||||
@app.route('/decode')
|
|
||||||
def decode():
|
|
||||||
return render_template('./templates/decode.html')
|
|
||||||
|
|
||||||
|
|
||||||
@app.route('/api/decode', methods=['post'])
|
|
||||||
def decodeApi():
|
|
||||||
try:
|
|
||||||
# 注意!这里 get 的 url 只能以最终部署在容器内部的容器内 IP 作为域名,否则模拟浏览器无法获知页面内容。
|
|
||||||
# 这主要是因为本工程在部署时与模拟浏览器分处不同的容器中,因此只能将本工程容器和模拟浏览器的容器创建在同一个 docker network 下
|
|
||||||
browser.get('http://172.18.0.2:5000/decode')
|
|
||||||
except:
|
|
||||||
try:
|
|
||||||
browser.start_session(capabilities=DesiredCapabilities.EDGE)
|
|
||||||
browser.get('http://172.18.0.2:5000/decode')
|
|
||||||
except:
|
|
||||||
return '500'
|
|
||||||
data = request.get_data()
|
|
||||||
# inputEle.send_keys(bytes.decode(data))
|
|
||||||
js = 'var txt = document.getElementById("encode");txt.value="%s";' % bytes.decode(data)
|
|
||||||
browser.execute_script(js)
|
|
||||||
button = browser.find_element_by_id('decode')
|
|
||||||
button.click()
|
|
||||||
inputEle = browser.find_element_by_id('encode')
|
|
||||||
text = inputEle.get_attribute('value')
|
|
||||||
# browser.close()
|
|
||||||
return text
|
|
||||||
|
|
||||||
|
|
||||||
@app.route('/decode_track')
|
|
||||||
def decode_track():
|
|
||||||
return render_template('./templates/decode_track.html')
|
|
||||||
|
|
||||||
|
|
||||||
@app.route('/api/decode_track', methods=['post'])
|
|
||||||
def decodeTrackApi():
|
|
||||||
try:
|
|
||||||
browser.get('http://172.18.0.2:5000/decode_track')
|
|
||||||
except:
|
|
||||||
try:
|
|
||||||
browser.start_session(capabilities=DesiredCapabilities.EDGE)
|
|
||||||
browser.get('http://172.18.0.2:5000/decode')
|
|
||||||
except:
|
|
||||||
return '500'
|
|
||||||
data = request.get_data()
|
|
||||||
# inputEle.send_keys(bytes.decode(data))
|
|
||||||
js = 'var txt = document.getElementById("encode");txt.value="%s";' % bytes.decode(data)
|
|
||||||
browser.execute_script(js)
|
|
||||||
button = browser.find_element_by_id('decode')
|
|
||||||
button.click()
|
|
||||||
inputEle = browser.find_element_by_id('encode')
|
|
||||||
text = inputEle.get_attribute('value')
|
|
||||||
# browser.close()
|
|
||||||
return text
|
|
||||||
|
|
||||||
|
|
||||||
@app.route('/api/getvalue')
|
|
||||||
def decodeApi2():
|
|
||||||
inputEle = browser.find_element_by_id('encode')
|
|
||||||
text = inputEle.text
|
|
||||||
return text
|
|
||||||
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
|
||||||
app.run(host='0.0.0.0', port=5000)
|
|
||||||
@ -1,2 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
python server.py
|
|
||||||
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:a47344e460415d23794fcf429f544d8409c3bfdb2ac660541757783953b89427
|
|
||||||
size 1124476
|
|
||||||
@ -1,19 +0,0 @@
|
|||||||
<!DOCTYPE HTML>
|
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<script src="{{url_for('static',filename='jquery-1.8.2.min.js')}}"></script>
|
|
||||||
<script src="{{url_for('static',filename='ElaneMap.min.f.js')}}"></script>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<input type="text" id="encode">
|
|
||||||
<input type="button" value="decode" id="decode" onclick="decode()">
|
|
||||||
<script>
|
|
||||||
function decode(){
|
|
||||||
var encodeContent = document.getElementById('encode').value;
|
|
||||||
// var temp = ShipxyAPI._0x44f5d9;//['_requestAreaShips_v3'];
|
|
||||||
var result = dedecode(encodeContent,"1");
|
|
||||||
document.getElementById('encode').value = JSON.stringify(result.data);
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
@ -1,20 +0,0 @@
|
|||||||
<!DOCTYPE HTML>
|
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<script src="{{url_for('static',filename='jquery-1.8.2.min.js')}}"></script>
|
|
||||||
<script src="{{url_for('static',filename='ElaneMap.min.f.js')}}"></script>
|
|
||||||
<script src="{{url_for('static',filename='DeAnalyseManager.js')}}"></script>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<input type="text" id="encode">
|
|
||||||
<input type="button" value="decode" id="decode" onclick="decode_track()">
|
|
||||||
<script>
|
|
||||||
function decode_track(){
|
|
||||||
var encodeContent = document.getElementById('encode').value;
|
|
||||||
// var temp = ShipxyAPI._0x44f5d9;//['_requestAreaShips_v3'];
|
|
||||||
var result = analyseAisTrack(encodeContent);
|
|
||||||
document.getElementById('encode').value = JSON.stringify(result.data);
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
Loading…
x
Reference in New Issue
Block a user