Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Sign in
Toggle navigation
L
lcc-shape
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Open sidebar
wangmingming
lcc-shape
Commits
b8806836
Commit
b8806836
authored
Oct 06, 2023
by
wangmingming
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
请求造纸
parent
7f3a750d
Changes
8
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
1841 additions
and
76 deletions
+1841
-76
jetblue.py
b6/src/jetblue.py
+25
-25
package-lock.json
b6/src/package-lock.json
+1
-0
package.json
b6/src/package.json
+1
-0
src.js
b6/src/src.js
+24
-19
start.js
b6/src/start.js
+114
-0
package-lock.json
package-lock.json
+1662
-29
package.json
package.json
+1
-0
test.py
test.py
+13
-3
No files found.
b6/src/jetblue.py
View file @
b8806836
...
...
@@ -99,39 +99,39 @@ while True:
selectId
=
random
.
choice
(
list
(
envs
))
# selectId = 'a74b38e7115cf4d1b1f6976c'
if
usedTime
>
5
:
c
=
session
.
get
(
'https://www.jetblue.com/js/src/jb-74873.js'
,
insecure_skip_verify
=
True
)
.
text
m5
=
md5
(
c
)
if
m5
!=
lastHash
:
lastHash
=
m5
usedTime
=
0
logger
.
debug
(
'js变化'
)
token
=
re
.
findall
(
'nt"
\
),
\
["(.+?)",'
,
c
)[
0
]
db
.
token_shape
.
insert_one
({
'_id'
:
token
,
'update_time'
:
int
(
time
.
time
()
*
1000
)
})
code
=
open
(
'src.js'
,
'r'
,
encoding
=
'utf-8'
)
.
read
()
with
open
(
'src_run1.js'
,
'w'
,
encoding
=
'utf-8'
)
as
f
:
f
.
write
(
code
+
'
\n\n
'
+
c
)
#
if usedTime > 5:
#
c = session.get('https://www.jetblue.com/js/src/jb-74873.js', insecure_skip_verify=True).text
#
m5 = md5(c)
#
if m5 != lastHash:
#
lastHash = m5
#
usedTime = 0
#
logger.debug('js变化')
#
token = re.findall('nt"\),\["(.+?)",', c)[0]
#
db.token_shape.insert_one({
#
'_id': token,
#
'update_time': int(time.time() * 1000)
#
})
#
code = open('src.js', 'r', encoding='utf-8').read()
#
with open('src_run1.js', 'w', encoding='utf-8') as f:
#
f.write(code + '\n\n' + c)
# # with open('js_dom_run1.js', 'w', encoding='utf-8') as f:
# # f.write(code1 + '\n\n' + c)`
t1
=
time
.
time
()
token
=
list
(
db
.
token_shape
.
aggregate
(
[
{
'$sample'
:
{
'size'
:
1
}
}
]
))[
0
][
'_id'
]
# r = requests.get('http://127.0.0.1:5000/getinfo').json()['message']
#
r = requests.get('http://127.0.0.1:3001').json()
r
=
requests
.
get
(
'http://127.0.0.1:3001'
)
.
json
()
# p = subprocess.Popen(['node', 'js_dom_run.js', selectId, '11'], stdin=subprocess.PIPE, stdout=subprocess.PIPE,
# p = subprocess.Popen(['node', 'src_run_chrome_105.js', selectId, '11', token], stdin=subprocess.PIPE, stdout=subprocess.PIPE,
# p = subprocess.Popen(['node', 'src_run_company_chrome.js', selectId, '11', token], stdin=subprocess.PIPE, stdout=subprocess.PIPE,
p
=
subprocess
.
Popen
([
'node'
,
'src_run1.js'
,
selectId
,
'11'
,
token
],
stdin
=
subprocess
.
PIPE
,
stdout
=
subprocess
.
PIPE
,
stderr
=
subprocess
.
PIPE
)
output
,
err
=
p
.
communicate
(
timeout
=
10
)
tmp
=
''
if
p
.
returncode
==
0
:
tmp
=
output
.
decode
()
.
split
(
'
\n
'
)[
-
2
]
else
:
raise
Exception
(
selectId
)
r
=
json
.
loads
(
tmp
)
#
p = subprocess.Popen(['node', 'src_run1.js', selectId, '11', token], stdin=subprocess.PIPE, stdout=subprocess.PIPE,
#
stderr=subprocess.PIPE)
#
output, err = p.communicate(timeout=10)
#
tmp = ''
#
if p.returncode == 0:
#
tmp = output.decode().split('\n')[-2]
#
else:
#
raise Exception(selectId)
#
r = json.loads(tmp)
# res = db.env_shape.update_one(
# {'_id': ObjectId(selectId)},
# {"$inc": {"used": 1}}
...
...
b6/src/package-lock.json
View file @
b8806836
...
...
@@ -10,6 +10,7 @@
"license"
:
"ISC"
,
"dependencies"
:
{
"abab"
:
"^2.0.5"
,
"pm2"
:
"^5.3.0"
,
"acorn"
:
"^8.4.1"
,
"acorn-globals"
:
"^6.0.0"
,
"canvas"
:
"^2.11.2"
,
...
...
b6/src/package.json
View file @
b8806836
...
...
@@ -12,6 +12,7 @@
"abab"
:
"^2.0.5"
,
"acorn"
:
"^8.4.1"
,
"acorn-globals"
:
"^6.0.0"
,
"pm2"
:
"^5.3.0"
,
"canvas"
:
"^2.11.2"
,
"cssom"
:
"^0.5.0"
,
"cssstyle"
:
"^2.3.0"
,
...
...
b6/src/src.js
View file @
b8806836
No preview for this file type
b6/src/start.js
0 → 100644
View file @
b8806836
const
pm2
=
require
(
'pm2'
)
const
crypto
=
require
(
'crypto'
)
const
fs
=
require
(
'fs'
)
function
_md5
(
content
)
{
const
md5
=
crypto
.
createHash
(
'md5'
)
return
md5
.
update
(
content
).
digest
(
'hex'
)
}
let
hash
=
''
let
code
=
fs
.
readFileSync
(
'src.js'
).
toString
()
pm2
.
connect
(
async
function
(
err
)
{
if
(
err
)
{
console
.
error
(
err
)
process
.
exit
(
2
)
}
let
res
=
await
fetch
(
'https://www.jetblue.com/js/src/jb-74873.js'
);
let
text
=
await
res
.
text
();
let
newHash
=
_md5
(
text
)
if
(
newHash
!==
hash
)
{
hash
=
newHash
console
.
log
(
new
Date
(),
'js文件变化'
)
fd
=
fs
.
openSync
(
'src_run1.js'
,
'w'
)
fs
.
writeSync
(
fd
,
code
+
';;;'
+
text
+
`
;;;
http.createServer((request,response)=>{
// console.log('当前times', times)
if (randomEvent){
window.mouse_move(startx,starty,endx,endy)
}
sid = keys[parseInt(Math.random() * keys.length)]
// sid = "b93e97591189a5841d0288ba"
ENV = ENVS[sid]
var xhr = new XMLHttpRequest();
xhr.open('POST', "https://jbrest.jetblue.com/lfs-rwb/outboundLFS", false);
xhr.send("")
xhr.setRequestHeader('user-agent', navis.userAgent)
// console.log(xhr.headers)
console.log('结束times', times)
// res.send()
response.end(JSON.stringify(xhr.headers))
}).listen(3001)
`
)
}
pm2
.
start
({
script
:
'src_run1.js'
,
args
:
'f40dbc501d254cb7dd41d45c 2 3'
,
name
:
'api'
},
function
(
err
,
apps
)
{
if
(
err
)
{
console
.
error
(
err
)
return
pm2
.
disconnect
()
}
// console.log(apps)
// console.log()
})
pm2
.
start
({
interpreter
:
'/Users/wang/miniconda3/envs/nx/bin/python3'
,
script
:
'jetblue.py'
})
setInterval
(
async
function
()
{
let
res
=
await
fetch
(
'https://www.jetblue.com/js/src/jb-74873.js'
);
let
text
=
await
res
.
text
();
let
newHash
=
_md5
(
text
)
if
(
newHash
!==
hash
)
{
hash
=
newHash
console
.
log
(
new
Date
(),
'js文件变化'
)
fd
=
fs
.
openSync
(
'src_run1.js'
,
'w'
)
fs
.
writeSync
(
fd
,
code
+
';;;'
+
text
+
`
;;;
http.createServer((request,response)=>{
// console.log('当前times', times)
if (randomEvent){
window.mouse_move(startx,starty,endx,endy)
}
sid = keys[parseInt(Math.random() * keys.length)]
// sid = "b93e97591189a5841d0288ba"
ENV = ENVS[sid]
var xhr = new XMLHttpRequest();
xhr.open('POST', "https://jbrest.jetblue.com/lfs-rwb/outboundLFS", false);
xhr.send("")
xhr.setRequestHeader('user-agent', navis.userAgent)
// console.log(xhr.headers)
console.log('结束times', times)
// res.send()
response.end(JSON.stringify(xhr.headers))
}).listen(3001)
`
)
pm2
.
restart
(
'api'
)
}
},
10000
)
})
\ No newline at end of file
package-lock.json
View file @
b8806836
This diff is collapsed.
Click to expand it.
package.json
View file @
b8806836
...
...
@@ -30,6 +30,7 @@
"
isolated-vm
"
:
"
^4.6.0
"
,
"
nwsapi
"
:
"
^2.2.0
"
,
"
parse5
"
:
"
6.0.1
"
,
"
pm2
"
:
"
^5.3.0
"
,
"
saxes
"
:
"
^5.0.1
"
,
"
superpack
"
:
"
^2.3.0
"
,
"
symbol-tree
"
:
"
^3.2.4
"
,
...
...
test.py
View file @
b8806836
...
...
@@ -8,7 +8,17 @@ session.proxies = {
'http'
:
'http://127.0.0.1:7890'
,
'https'
:
'http://127.0.0.1:7890'
,
}
headers
=
{
'Host'
:
'jbrest.jetblue.com'
,
'application-channel'
:
'Desktop_Web'
,
'user-agent'
:
'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/115.0.0.0 Safari/537.36 Edg/115.0.1901.188'
,
'booking-application-type'
:
'NGB'
,
'content-type'
:
'application/json'
,
'accept'
:
'application/json'
,
'origin'
:
'https://www.jetblue.com'
,
'accept-language'
:
'en-US,en;q=0.9,zh-CN;q=0.8,zh;q=0.7'
,
'x-1itxwo9i-f'
:
'Aw9OHQOLAQAAA2rqwtNs0Po1mA9OG8HD-iRaPmM-q37QqEw6qOtTo59-75wrAZooPNsAAAAAAAAAAAAAAAAAAA=='
,
'x-1itxwo9i-b'
:
'-pe3plv'
,
'x-1itxwo9i-c'
:
'AEBCGwOLAQAAQTf2NQ9mLbiyoX-lpQTAVKfoSYOuycEJd-cBNqDkSq_DitWh'
,
'x-1itxwo9i-d'
:
'ABaAhIDBCKGFgQGAAYIQgISigaIAwBGAzvpCzi_33weg5Eqvw4rVoQAAAAByzJzLAPN_NvtrJkMe0CStW1jTRhQ'
,
'x-1itxwo9i-z'
:
'q'
,
'x-1itxwo9i-a'
:
'733Q1AWg96Krwn525wkFthdKcBJstoNQeqdsoHaCWl2Ovws=UxVCCVLQls-FdeYNXZWogG7wnZS2pJlLToPMK9KVjaYsXP1j7FgTGYncrfxef5jP=JJinQQE3vFM6FyL=A_5Z1Tbzz57m52Kmo5xetoRP_DGoCCM9aYxSOmGvlOmvYzgdqW-c6JORInGei2wbKxB7-iuykUEajZIj7j2vqjpMKerqQf=J4ySg283xjzGXKx7624U5OYcjEWwNfyPfLh8jPRsMUXzd6FOKnGrpfRCMfmz6leMVqWRYNxlnS8hznGpHAOTXffQYDlR_42eahCVzlj4JdyPufsD9Vazo6ll_e4gmu9vii=Sx1NKyLHiWqIlX5Om-88Gs11pcnfVSBTDd33_=nr47v1ouNsIQRXMAOTXliccKPSFj4xWpr_m8PXcSkMqKu2oRa-K2IZlRnKE3Bl6dLq4InT6iDr61bE2hsrLKDzWkRtZjIBS4izrkG2tGqi=dQcCurOWbHKCZ-2LCgCURA=1yNiIX-a3mIIS3cwc2RH7fmXdhzd1xSGYTqBMCz4X8dJyBzIYPQsTVmgYfQ-ZEmOq1BdcMm4bjUndH3=3Xo7RAcjfny5guwJci46GM9uhzLuwzLreyRnUw4yZ_IGWB-WoEK_cnXGfDMPxhTMW9Mywzh7QjO4nrNLJCVJifhLoYTuX_tIeBpGVLPETudcFBrpkcyeuL5S3kO4zoiIFCOXJP=ny2izTG=dCyid=wnzGMrMLc-ivbfxp7F1k=sT-OTTcYn9qy6nffaGoX2gc-t5aOT743UNY-ZROmFKXQhf_oVOPbLSdApf=qeCq5KIvu9AGKKA3Gno_8STIX8LYQpuqGNRyq7cB=ZApLx93CmBNlfkl1Hgp1KMbqMzzjl3rmY4sea7IAxyGCRE_Ja7EPyKhJ8yPvkuAAiCLd96UxklkO3D2XV9OgV8J_AuV48evSNuysub-5NBH-k9GLTiu1M-9qi5_J71bXx-2m9Ve7kW4-SUO8XN9PIdN4dqjhy9RGmqq7cXoX88Sjf4iO27RVFLPiAYkgtSp1rt2zf35xXfHG4-j=jZ9xZIbctGZqcg8nEMsPoc=4HfDZNzbcQDWml_Z-I2gOWRoQxknqOVu1Yad8mONQgnOC2-gry66VDkRxAlasHNBqlN33iBfDFX=br4ASwaaaexkdKvde8B6BWyrKkbTFOVTP5CaajF6N4n5tdBoyzO5zTtyxquGNNPRfelHDVAQdOl=r-AYPGA9=A-ueMzkRrKHE15UB4GckC_W7RRzueYyAwYsh4fUhlXIdiNU-pfc5vovyNxxSFQ=tdKd8ncnhy6-qEu_gJP4iRIppyNi8_hiFeVj4sgPCRHRBc4YEFep-prGcqHIyXwvSPI=9GS5X4trqRTEqMXGfSrUa8KaVISWRCsQ5hxCvVTmz=DptuTK2_idA5iDm2AGjpdSYDsL1DnFsQ_G3nEj3wuBTbrrTL6salDtoU7KVfee-v6e3Xiytt78H_=mFCuxt6uCmYd9TWw-NM4bVcf12qHKrRS_5xcdlbfJfvCYuF4zaqsleEe1osj1OCuVnqBEiidRDiJd4N3ZWJXPRznqh=Fqo9YrMvnjxkkeoyavVHDyMVjIvUApWkhmD3c7JCMlOQjSFlXN36C61NnbWyrN8QKpWxqj=iLnBqKOIV2MCiRVYZ-U7FUqIB'
}
headers
=
{
"x-1itxwo9i-a"
:
"erRC9zENjHroJM0-q=MPKcC0mFLaXUPj=J7t0qDHoGA=uMjAITWdRooi41EqUEEJpj5HUaJJT3JWrnTHKEjCgRBe=fSEodGes2=FGMyr3wJJ4lUD7XyP8RWn-i6gn0W_MLId_onN974ifUOKjMi8sy4dHjt8DuFL6RnllNXEUykW4NHA55T0X1XHbXwk9R_rIRc4LU2je3iG1KL5g203hY3o1qIVkjDcsgyQ-FsltuyI-=L6FbfOnEbROTge9AWmx9YS_xQz6ji5LWo23lG2Jq0p1nuLeRj6W01mE2KM=gz5yxJwg3dC4le7EluNu6zQIuiDBmXZASCRlXSBBUbQezxMVz4YIz15VfWNi00OeRy8zWCI48ORVrTQ=EWxPkQtqtiBHtV0an4jN4s73P6sksajwc5Y3mc-1A-CM260kl-eHaPQALwbzSjNT3RtQHHOz0XVnDDN5VTxL8673xVn=UrHYcKq-auqYK-ohQQKIjHrN=DU9ibc9sF-EWmB3C2eqoMHwkC-y9adaFWmfVmVhXY=6LnXjqJhHjGU2tg6uJgMKLXH=1pOU3WJ4tRJcLj9z_yXKiBHg3aomYTQPzmxJNQYJrGy9e9NPDBTyC_CJYZjWqrLDTFpglYbwmeYUMzuDsDkYlq8egxm3qjT3BdrL4z0y8xKitNtE94hyrcHqDgkp-YJ1fBNZya7hOEUiN-449KxLDLTREgbeuAXGCtudi3D3yPw7t2DjirGazV0Q7_mIi363rDRlgKodpZgjP94Z-DVZlDkR_rNb3AL5iR35EPJNbG=sgjRGZP4qAgz9kug0QUV5eyHPBSN5Onf4gTJFPrE9njKwmaIO_uxqg4awyAd4OpKVrLZVqxq-NLrgzsw_FRq8x_8xIPFUgn-aMlzDjz8j3Zdy_TBw2mtA95-4zNtKES=_pfoiNo-==m9olGS0E7B098jex2TZMK=mmaIW23OAnaJU1516sY5YBt7dCE8VNGuYVbRDNTLSM6NeUuyZBXQhcMf9DRZeZo5mNGki_V3knEVXxsopfDfU9HlA81DzFc11VwsA=F6l3d=2UHNTFG_2RwU953NQbcoGDBEeoJf96ZSed7Lx46DjeUnzwJWrzIT1EpGMPRFoLtD_qWo=zNwqLmflXD-py5JZfE8eV_iJf_jhMYMSAL=co3ow2opHgOZWw6aEMKqpyKdeBRRNjcJOVd9zJsVXLZglX5Q5SbmyK0uPg1nTQZqBTJhlspurEGfL-N2LHVfq3Bwj-Ps25EgNDxq80forBZ6kbfI_jLSgUobmrTpP65C7C0ORu2sy4nNgu6EzzuL-1Z7bsoprBFYoQbkQeEi=MNeu217VUhrHlbY2HmHYHwI=bZI6zwFgeMXH-TMqDsrELSHwePdyZUHc3lqT1BmOHBJEh1JD9_eEbaDqVRQKIEYuXSK78L8HXHrm773H1dlRsD27=Lq5wu=Y-kEjmDMA0WE2JdikxGkNqirHWJ1ZiDm9iPDe3W1OhbywIBcJ7-LHTkd7-pOOCer-XqM-wX6wa1ycXm-XyhXe8S_wQ5r3A49HGzzHRenjDmUOX0iWH5ZQtbqNGPHg8wbVpJIjFoc2s4yRR0XT5ETqpFafOq_za3--KMQyj1NXdHfxC_NfCdRwjy4Olp3SHQ8imXj54Fh7eeJyp865ZnVBF0eMJ5b5ftgtDh=tzcNjgkg9JrxUfT=ONjqSnFLiBNhoxU-5EPw9lpol2ki"
,
"application-channel"
:
"Desktop_Web"
,
"x-1itxwo9i-f"
:
"A1cbuQOLAQAA01cyxG7te8eBW33RR0dBvDG8gj7zmlG_Kkp2-yLSYD859TjSAdF_b_wAAAAAAAAAAAAAAAAAAA=="
,
"x-1itxwo9i-c"
:
"AADmtgOLAQAAacZGZf1h4MiL3w1EpZnCJ6TssjwDO_QpTJbX-xZ6XCs-gfNv"
,
"Host"
:
"jbrest.jetblue.com"
,
"accept"
:
"application/json"
,
"x-1itxwo9i-d"
:
"ABaAhIDBCKGFgQGAAYIQgISigaIAwBGAzvpCzi_33wcWelwrPoHzbwAAAAByzJzLALgJDCI4_MNbPnCHiTZo0p4"
,
"x-1itxwo9i-z"
:
"q"
,
"user-agent"
:
"Mozilla/5.0 (iPad; CPU OS 16_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) CriOS/114.0.5735.124 Mobile/15E148 Safari/604.1"
,
"origin"
:
"https://www.jetblue.com"
,
"accept-language"
:
"en-US,en;q=0.9,zh-CN;q=0.8,zh;q=0.7"
,
"booking-application-type"
:
"NGB"
,
"content-type"
:
"application/json"
,
"x-1itxwo9i-b"
:
"xihes3"
}
url
=
"https://jbrest.jetblue.com/lfs-rwb/outboundLFS"
data
=
{
...
...
@@ -38,5 +48,5 @@ data = {
}
while
True
:
print
(
session
.
post
(
url
,
json
=
data
,
headers
=
headers
)
.
text
)
print
(
session
.
post
(
url
,
json
=
data
,
headers
=
headers
)
.
text
)
time
.
sleep
(
1
)
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment