可能需要高手才能解决,关于抓取!
要抓的网站地址是 http://tracking.mscgva.ch/msctracking.php
需要在他的文本框里输入,点击按钮,抓取返回的结果。
但是我用FIDDER跟踪,发现我输入的文本被自动修改成一个加密的字符串了。 这个怎么回事?有高手可以破解码?
测试用的文本 MSCUMN976149
比如你可以在上面的网址输入这个MSCUMN976149, 返回一批结果,我要抓取这个结果。
这个应该蛮高难度的吧?有人会不?
——解决方案——————–
…
MSCUMN976149 经过base64_encode编码后就是 TVNDVU1OOTc2MTQ5 |CT|经过编码后就是fENUfA==
并接成了其中一个地址
http://tracking.mscgva.ch/MSCTrackingData.php?e=TVNDVU1OOTc2MTQ5fENUfA==
其他的自己编码拼凑,然后提交 直接取返回结果就行了.
——解决方案——————–
这就得靠你自己去分析那些js代码咯…不清楚的话就照着传递吧,先吧编码过的解出来看看是什么.
–2本文来源gao*daima.com搞@代#码&网6
搞gaodaima代码
—–解决方案——————–
js代码全都是真相。
——解决方案——————–
模糊,lz懂了把思路贴出来,坐等~~
——解决方案——————–
- JScript code
/** * DataCallback */function DataCallback(){ // Get content of InputBox (entered by user) var TrackingString = dojo.byId("InputBox").value; // Get value of the drop-down box (Container, B/L or Booking Number) var SearchType = dojo.byId("SearchType").value; // Transform the content of TrackingString in uppercase TrackingString = TrackingString.toUpperCase(); var getAXSSContent = dijit.byId("SearchResults"); if (TrackingString != '') { // Clear old results ClearResults(); // Send a base64 encoded string to MscTrackingData containing: // 1. The value entered by the user // 2. The search type (Container/BL or Booking) // 3. Applic which is a global variable set in index.php var URLString = Base64.encode(TrackingString + "|" + SearchType + "|" + Applic); getAXSSContent.attr("href", "MSCTrackingData.php?e=" + URLString); getAXSSContent.attr("onDownloadEnd", function() { dojo.parser.parse(dojo.byId("SearchResults")); disableSearch(false); }); } else { viewTrackingError("Please enter a Container number, a Bill of Lading or a Booking number in the input box."); disableSearch(false); }}
------解决方案--------------------
这个不知道怎么做呢。。