-->

สอนเขียน imacro เริ่มต้นเขียน imacro js อย่างง่าย

สอนเขียน imacro เริ่มต้นเขียน imacro js อย่างง่าย
สอนเขียน imacro เริ่มต้นเขียน imacro js อย่างง่าย

นับว่าเครื่องมือที่ช่วยงานผมมาโดยตลอดอีก 1 เครื่องมือคือเจ้า imacro นี่แหละครับ แต่ด้วยเดิมที่ใช้งานแต่ไฟล์ iim ที่อัด record แล้วกด play อย่างเดียวนั้นมันไม่ตอบโจทย์การทำงานเราเลย แต่ด้วย imacro ดันมีไฟล์ตัวอย่าง js ที่อยู่ในโฟลเดอร์ demo นั้นแนบมาด้วย จึงเริ่มศึกษาเพิ่มเติมว่ามันทำงานอย่างไร 

เดิมผมใช้ imacro iim ทำงานแทนเก็บสินค้า amazon ครับ มันทำงานได้ดี แต่ว่าในหมวดหมู่สินค้า 1 หน้านั้นมี 20-40 กว่าๆชิ้น(จำไม่ได้ว่ามีเท่าไรแล้วครับ) ต้อง copy code มาทั้งหมดตามจำนวนสินค้านั้นทั้งหมดและนั่งแก้บรรทัด POS ให้เรียงเลข 1-2-3 ตามลำดับ ซึ่งมันยากและลำบากคนใช้งานพอสมควร แต่ว่าโปรแกรม imacro มันก็ช่วยให้เราทำงานได้ง่ายกว่าเดิมอยู่แล้ว เพราะมันเป็นโปรแกรมช่วยงานเราดีๆนี่เอง 

หลังจากได้ศึกษา imacro js มาซักพัก จึงประยุกต์นั่นนี่มาเรื่อยๆ ทำ workshop มาเรื่อยๆ พอที่จะตกตะกอน พอมีความรู้มาบ้าง เลยจะเอามาเขียนเป็นบทเรียนเผื่อจะได้แลกเปลี่ยนความรู้กันครับ ผมไม่สามารถที่จะเรียกเก็บค่าเล่าเรียนได้ เพราะว่าการได้มิตรสหายน่าจะเวิคที่สุด แลกเปลี่ยนจากใจจริงน่าจะดีที่สุด หากชอบบทความค่อยเลี้ยงกาแฟจะดีที่สุดครับ อ้อ ผมมีปุ่มให้เลี้ยงกาแฟนะ(แอบมี) 

ทำไมต้องใช้ Imacro 

การที่เราจะได้มาซึ่งข้อมูล หรือว่าการที่เราจะใช้เวลานั่งโพสข้อความซ้ำๆเดิมๆนั้น เราใช้เครื่องมือเข้ามาช่วยเวลาในจุดนี้ดีกว่าไหม แล้วทำไมต้องเป็น imacro  ส่วนตัวมองว่า imacro มันใช้งานง่ายและปรับแต่งและรันได้เลย อยากปรับอะไรทำได้ทันที มันค่อนข้างครบเครื่องในระดับหนึ่ง แต่ด้วยทุกเว็บไม่ต้องการให้ bot ทำงาน จะถูกกีดกันบางเว็บครับ แต่ก็สามารถเอาตัวรอดได้บางเว็บครับ สำหรับการใช้งาน imacro js ช่วยงาน 

ผมชอบ imacro ที่ว่ากด play เสร็จ เดินไปดูต้นไม้ปลูกต้นไม้ได้ แต่ว่าเราต้องวางและเขียน imacro ให้สมบรูณ์ระดับนึงนะครับ ให้สามารถคิดและวิเคราะห์เท่าคนระดับนึงได้ครับ ทั้งนี้ ตอนนี้ที่ผมใช้งาน imacro ส่วนใหญ่เป็นเรื่องของการเก็บข้อมูลจากเว็บๆนึง และเอาไปโพสอีกเว็บๆนึงครับ ซึ่งไม่ต้องทำงานเองเลย ทั้งนี้อาจมีเขียนระบบ php เข้ามาช่วยงานให้ imacro มันเอาข้อมูลที่ php จัดรูปแบบให้ไปโพสได้ต่อ

ทำไมต้องเป็น Imacro js

เหมือนที่ผมเกริ่นไว้บ้างแล้วครับ imacro ที่เป็นไฟล์ iim ที่กด record และ กด play นั้นมันทำงานได้ดีอยู่ครับ แต่ว่าไม่ได้ตอบโจทย์เราทั้งหมดครับ ผมต้องการใช้งาน javascript เข้ามาช่วยงานนตัดสินใจบางอย่าง ยกตัวอย่างว่า เมื่อเก็บข้อมูลมาแล้วอยากให้โปรแกรมตรวจสอบข้อมูลที่เก็บมาว่าถูกต้องไหม ก็สามารถใช่งาน js ตรวจสอบได้ทันที 

ผมชอบใช้งาน js เข้ามาช่วยเช็ค อย่างเช่นใช้งาน regex เข้ามาตรวจสอบข้อมูล อย่าง title ของสินค้าต้องมีคำนี้ด้วยนะ หากไม่มีคำนี้ ไม้ต้องเก้บข้อมูลมา หรืออีกอยากที่บางเว็บไม่สามรถเก็บข้อมูลได้สมบรูณได้ ผมจะใช้ regex และเขียน function ช่วยในการเก็บข้อมูลมาครับ และเก็บข้อมูล HTM มาวิเคราะห์เลย แทนที่จะเก็บข้อมูลแบบ tag html แบบเดิม บางทีมันเก็บข้อมูลอย่างนั้นไม่ได้ บางเว็บต้องเก็บที่ tag body เลยครับถึงจะได้ และใช้งาน regex มาช่วยเอาข้อมูลที่เราต้องการออกมาครับ ค่อยดูตัวอย่างใน workshop ครับผม

ข้อดี ข้อเสีย imacro iim และ imacro js

โปรแกรม imacro ทั้งสองอย่างนั้นมีข้อดีข้อเสียที่ต่างกันพอสมควรครับ หากจะให้ใช้งานเร็วๆเลยใช้ imacro iim ครับ หากท่านผู้ใช้งานถนัด coding ขึ้นมาหน่อยให้ใช้ imacro js ครับ จะช่วยงานได้เยอะมากเลย เพราะ imacro js ลูกเล่นเยอะดี

รูปแบบการทำงานของ imacro js sample

ตัวอย่างไฟล์ imacro js ที่ใช้งานครับ 
iimPlay("CODE: SET !EXTRACT NULL" + "\n"
 +"ADD !EXTRACT {{np}}" + "\n"
 +"ADD !EXTRACT {{link}}" + "\n"
 +"ADD !EXTRACT {{img}}" + "\n"
 +"ADD !EXTRACT {{alltitle}}" + "\n"
 +"ADD !EXTRACT {{price}}" + "\n"
 +"ADD !EXTRACT {{category}}" + "\n"
 +"SAVEAS TYPE=EXTRACT FOLDER={{folder}} FILE={{savefile}}" + "\n");
จากตัวอย่างจะเห็นได้ว่าจะต้องใช้คำสั่ง iimPlay(); เข้ามาเรียกใช้งานครับ แล้วข้อมูลข้างในละ, ด้านในของ code นี้ผมชอบอัด imacro หรือว่า record imacro มาก่อนครับเพราะว่าผมต้องการทราบการทำงานคร่าวๆก่อนว่า มันทำงานอะไรบ้างหลังจากที่อัดมาแล้วเราจะได้ไฟล์ iim มา เราก็เอามาปรับแต่งโดยยัดไฟล์ใน iimPlay(); ได้ทันที แต่ว่าต้องใส่ \n ไปด้วยครับ ให้มันเป็นการขึ้นบรรทัดใหม่ เพราะว่า imacro ทำงานทีละบรรทัดครับ ผมเคยไม่ใส่มันทำงานไม่ได้(ฮ่าๆ) รูปแบบการทำงานง่ายๆประมานนี้แหละครับ 

พยายามอ้างอิง code ของ iim ว่าคำสั่งพื้นฐานเป็นอย่างไร ที่เหลือเป็นการเอาข้อมูลที่ได้จาก imacro มาให้ js ช่วยงานครับ มาดูตัวอย่าง imacro js ที่ผมเขียนเก็บบทความกันครับ

ตัวอย่าง imacro js เก็บบทความ
ตัวอย่าง imacro js เก็บบทความ

ตัวอย่าง imacro js ที่ผมเขียนไปเก็บบทความจากเว็บ ehow ครับ ซึ่งจะอยู่ในการเขียน workshop ครับ จะเห็นได้ว่า iimplay จะใช้งานน้อยมากครับ ที่เหลือผมใช้ js เข้าช่วยงานเยอะมาก อาทิ loop while, regex(ใช้งานบ่อยมาก), if else, function(จะมีข้อเสียอยู่) น่าจะประมานนี้ครับ ซึ่งจะอยู่ในบทเรียนถัดๆไปครับ

เริ่ม run imacro js ต้องเตรียมอะไรบ้าง

ผมเคยเขียนบทความแนะนำไว้บ้างแล้วครับว่าหากจะรัน imacro js นั้นต้องใช้ firefox version ไหน และใช้ imcro เวอร์ชั่นไหน อ้าวแล้วเวอร์ชั่นปัจจุบันใช้งานไม่ได้หรือครับ? ใช้งานไม่ได้คัรบ เนื่องจากปัจุบันตัดการทำงาน js ออกไปเฉยเลย ผมเลยต้องหาตัวเก่าๆมาใช้งานครับ บทความนี้แนะนำไว้ที่ แนะนำ Firefox ที่สามารถรัน Imacro ได้ ตัวผมก็ใช้ version นี้อยู่ครับ กลัวอยู่ว่า ณ วันหนึ่งบางเว็บจะไม่ซัพพอท browser ของ firefox เก่า ถึงเวลานั้นคงหาแนวทางใหม่อีกทีครับ