ยินดีต้อนรับคุณ, บุคคลทั่วไป กรุณา เข้าสู่ระบบ หรือ ลงทะเบียน

เข้าสู่ระบบด้วยชื่อผู้ใช้ รหัสผ่าน และระยะเวลาในเซสชั่น

ThaiSEOBoard.comความรู้ทั่วไปAmazonรบกวนเทพ imacro เรื่อง เก็บ url link ที่มี javascript ครอบ
หน้า: [1]   ลงล่าง
พิมพ์
ผู้เขียน หัวข้อ: รบกวนเทพ imacro เรื่อง เก็บ url link ที่มี javascript ครอบ  (อ่าน 1605 ครั้ง)
0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้
Punisher
ก๊วนเสียว
*

พลังน้ำใจ: 11
ออฟไลน์ ออฟไลน์

กระทู้: 251



ดูรายละเอียด
« เมื่อ: 19 กันยายน 2012, 14:29:51 »

เราสามารถ ดึง url ออกจาก link ที่มี javascript ครอบ นั้นได้เปล่าครับ ถ้าได้ต้องทำยังไง

โค๊ด:
<span class="style01">
                        <font color='green'>วันที่</font> (เรื่อง)
                        <a href='javascript:;' onclick='window.open("http://xxxx.com/xxxx ");' title='http://xxxx.com/xxxx' >บลาๆๆๆๆๆ</a>
                        <br />
</span>
<span class="style02">
                        <font color='green'>วันที่</font> (เรื่อง2)
                        <a href='javascript:;' onclick='window.open("http://xxxx2.com/xxxx ");' title='http://xxxx2.com/xxxx' >บลา2ๆๆๆๆๆ</a>
                        <br />
</span>

ผมทดสอบ: TAG POS=1 TYPE=SPAN ATTR=CLASS:style01 EXTRACT=HREF แบบนี้ไม่ผ่านครับ
หมายเหตุ: จะใช้ js หรือ imacro เก็บก็ได้ โดยที่ไม่ต้องการให้เปิด link(http://xxxx.com/xxxx ,http://xxxx2.com/xxxx) นั้นครับ
บันทึกการเข้า
ball6847
เจ้าพ่อบอร์ดเสียว
*

พลังน้ำใจ: 212
ออฟไลน์ ออฟไลน์

กระทู้: 4,174



ดูรายละเอียด
« ตอบ #1 เมื่อ: 19 กันยายน 2012, 15:11:34 »

โค๊ด:

(function(){

    var saveto = imns.Pref.getFilePref('defdatapath');
    saveto.append('data.csv');

    var style01 = window.content.document.getElementsByClassName('style01');

    for (var i=0; i<style01.length; i++) {
        var a = style01[i].getElementsByTagName('a');
        if (a.length) {
            var url = a[0].outerHTML.match(/window\.open\(['"](.*?)['"]\)/);
            if (url){
                imns.FIO.appendTextFile(saveto, url[1]+'\n');
            }
        }
    }

})();


มันน่าจะมีวิธีที่ง่ายกว่านี้นะ นึกไม่ออก เซ็งเลย wanwan044
บันทึกการเข้า

Punisher
ก๊วนเสียว
*

พลังน้ำใจ: 11
ออฟไลน์ ออฟไลน์

กระทู้: 251



ดูรายละเอียด
« ตอบ #2 เมื่อ: 19 กันยายน 2012, 15:50:19 »

โค๊ด:

(function(){

    var saveto = imns.Pref.getFilePref('defdatapath');
    saveto.append('data.csv');

    var style01 = window.content.document.getElementsByClassName('style01');

    for (var i=0; i<style01.length; i++) {
        var a = style01[i].getElementsByTagName('a');
        if (a.length) {
            var url = a[0].outerHTML.match(/window\.open\(['"](.*?)['"]\)/);
            if (url){
                imns.FIO.appendTextFile(saveto, url[1]+'\n');
            }
        }
    }

})();


มันน่าจะมีวิธีที่ง่ายกว่านี้นะ นึกไม่ออก เซ็งเลย wanwan044
โอ้วว ขอบคุณมากครับเดียวจะลองทดสอบดู ว่าแต่ เค้า + กันตรงใหนเนี้ย ผมพึงสมัครใหม่
บันทึกการเข้า
Punisher
ก๊วนเสียว
*

พลังน้ำใจ: 11
ออฟไลน์ ออฟไลน์

กระทู้: 251



ดูรายละเอียด
« ตอบ #3 เมื่อ: 19 กันยายน 2012, 17:25:49 »

รบกวนถามอีกรอบครับคุณ ball6847
คือผมลองนำโค๊ดไปใส่ใน imacro และบันทึกเป็น นามสกุล .iim
จากโค๊ดนี้

โค๊ด:

(function(){

    var saveto = imns.Pref.getFilePref('defdatapath');
    saveto.append('data.csv');

    var style01 = window.content.document.getElementsByClassName('style01');

    for (var i=0; i<style01.length; i++) {
        var a = style01[i].getElementsByTagName('a');
        if (a.length) {
            var url = a[0].outerHTML.match(/window\.open\(['"](.*?)['"]\)/);
            if (url){
                imns.FIO.appendTextFile(saveto, url[1]+'\n');
            }
        }
    }

})();


ผมได้จับใส่ imacro ได้ ตามนี้
อ้างถึง
URL GOTO=javascript:function<SP>copyurljs{var<SP>saveto<SP>=<SP>imns.Pref.getFilePref("D:/");saveto.append("data.csv");var<SP>style01<SP>=<SP>window.content.document.getElementsByClassName("style01");for<SP>(var<SP>i=0;<SP>i<style01.length;<SP>i++)<SP>{var<SP>a<SP>=<SP>style01.getElementsByTagName("a");if<SP>(a.length)<SP>{var<SP>url<SP>=<SP>a[0].outerHTML.match(/window\.open\([""](.*?)[""]\)/);if<SP>(url){imns.FIO.appendTextFile(saveto,<SP>url[1]+"\n");}}}}void(0);

URL GOTO=javascript:copyurljs();void(0);
แต่พอรัน แล้วไม่ขึ้นอะไรเลย csv ใน ไดร์ d มันไม่สร้างให้ และก็ไม่มี error อะไรขึ้นเลยครับ ไม่ทราบว่าต้องแก้ตรงใหน หรือว่าต้องเรียกใช้ฟังค์ชั่นยังไงครับ รบกวนด้วยครับ wanwan017
บันทึกการเข้า
ball6847
เจ้าพ่อบอร์ดเสียว
*

พลังน้ำใจ: 212
ออฟไลน์ ออฟไลน์

กระทู้: 4,174



ดูรายละเอียด
« ตอบ #4 เมื่อ: 20 กันยายน 2012, 06:36:38 »

อันนี้ต้องใน Javascript (.js) โดยตรงครับ รันผ่าน .iim ไม่ได้

PM โค้ด iim มาให้ผมได้ครับ ถ้าไม่เยอะมากผมจะแปลงให้ หรืออาจจะหาวิธีเก็บโดยใช้ iim ให้
บันทึกการเข้า

Punisher
ก๊วนเสียว
*

พลังน้ำใจ: 11
ออฟไลน์ ออฟไลน์

กระทู้: 251



ดูรายละเอียด
« ตอบ #5 เมื่อ: 21 กันยายน 2012, 08:58:02 »

ขอบคุณครับสำหรับแนวทาง ตอนนี้ได้แล้วโดยแปลงใหนเป็น js ทั้งหมด(หึดขึ้นคอเลย)ปรับเปลี่ยนจากการดึงลิงที่อยู่ใน java เป้นการดาวโหลดมาแล้วเรียกใช้แทนครับ wanwan017 ตอบช้าไปหน่อยช่วงงานเข้า ผมขอติด + ไว้ก่อนนะครับตอนนี้ยังบวกไม่ได้
บันทึกการเข้า
flash
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 16
ออฟไลน์ ออฟไลน์

กระทู้: 1,022



ดูรายละเอียด เว็บไซต์
« ตอบ #6 เมื่อ: 22 กันยายน 2012, 20:09:03 »

เทคนิคเทพ ขอบคุณครับ
บันทึกการเข้า

ครีมหมอจุฬา ผ่าน อย. อยากหน้าใส ไร้รอยด่างดำ ครีมหมอจุฬาซื้อที่ไหน หาไม่ยากเลย แต่ระวังของปลอมนะ ของเราเป็น ครีมหมอจุฬาของแท้ 100% มาดูสินค้าก่อนได้

หน้า: [1]   ขึ้นบน
พิมพ์