15 tháng 9, 2016

Script không hoạt động tốt trên imacros 9.0.3

Chào các bạn :d lâu rồi mình mới viết bài cho blog.

Sau khi cập nhật lên 9.0.3 thì nhiều file .js cũ không hoạt động. Mình không biết là do lỗi hay có thay đổi gì nên các bạn muốn file javascript (.js) cũ vẫn hoạt động tốt thì remove bản imacros hiện tại và vào

https://addons.mozilla.org/vi/firefox/addon/imacros-for-firefox/versions/

Cài bản từ 8.9.7 trở xuống là chạy ngon lành.

Good Luck :)

12 tháng 11, 2015

Định dạng các kí tự ",\,... trong imacros

Bây giờ mình có 1 ví dụ như là:

Trường hợp 1:
Mình sử dụng lệnh SEARCH tìm một đoạn trên trang web có kí tự "

con"gna"lib

Mình muốn lấy gna trong đoạn trên

Nhưng nếu mình viết như thế này thì nó sẽ không hoạt động chính xác. 

SEARCH SOURCE=REGEXP:"con\"([^""]+)\"lib" EXTRACT=$1

Bởi imacros không thể hiểu được đâu là " bắt đầu và " kết thúc.

Để chạy được bạn cần thêm \ trước các kí tự ",\,..

SEARCH SOURCE=REGEXP:"\"([^""]+)\"" EXTRACT=$1

Trường hợp 2:

Mình có đoạn code trong *.iim và mình muốn chuyển nó qua javascript

Code iim:

SEARCH SOURCE=TXT:"GoogleAnalyticsObject"

và chuyển sang js là:

code="SEARCH SOURCE=TXT:\"GoogleAnalyticsObject\"";
iimPlayCode(code);

Cũng như giải thích ở trường hợp 1

Trường hợp 3:

Ở trường hợp 1 nó chỉ là chạy trên file *.iim mà thôi ! Và bạn muốn chuyển sang *.js. Bạn phải tiếp tục thêm \ vào các kí tự ",\,... kể cả đã được định dạng mới như \\,\",...

code="SEARCH SOURCE=REGEXP:\"con\\"([^\"\"]+)\\"lib\" EXTRACT=$1";
iimPlayCode(code);

20 tháng 9, 2015

Phần 2: Lập trình imacros với javascript *.js

Nền tảng của imacros cũng được viết bằng javascript. Dùng javascript viết code imacros thì bạn có thể làm được những công việc phức tạp, vĩ mô hơn mà lập trình trên *.iim không thể làm được

Lấy vị dụ như bạn muốn làm view trang A 10 lần xong chuyển qua view trang B 15 lần chẳng hạn. Javascript có cấu trúc giống C- ngôn ngữ lập trình căn bản nhất, bạn có thể tương tác với nhiều thứ trên firefox như add-on,...

Nhưng blog mình chỉ hướng tới đa số là người mới học và không có kiến thức về lập trình nên mình sẽ chỉ những điều căn bản đủ dùng với *.js cho các bạn. Những kiến thức này mình tham khảo bên sozi.vn

Bài 1:
Tạo 1 biến và gán code imacros(giống như là nhúng lệnh trên *.iim vào *.js vậy).

var a="CODE:URL GOTO=http://hocimacros.blogspot.com";

Sau đó chạy biến đó

iimPlay(a);\

Bài 2:
Lệnh nhúng file *.iim vào *.js và chạy nó
iimPlay("imacro.iim");

Điều kiện là cả file này phải nằm trong thư mục của imacros

Bài 3:
Lệnh cấu trúc lặp
for (var i=0;i<=100;i++){
}

Sau một lần lặp giá trị của i tăng thêm 1. Lệnh trên là lặp 100 lần. Bạn sửa thành số bạn muốn. Trong {} là lệnh thực thi với từng lần lặp.

Ví dụ: Truy cập hocimacros.blogspot.com 100 lần

var a="CODE:URL GOTO=http://hocimacros.blogspot.com";
for (var i=0;i<=100;i++){
iimPlay(a);
}

Hoặc là chạy file imacro.iim 100 lần

var a="CODE:URL GOTO=http://hocimacros.blogspot.com";
for (var i=0;i<=100;i++){
iimPlay("imacro.iim");
}

Bài 4: Hàm kiểm tra lỗi
iimGetErrorText();

Hàm này xem code chạy có lỗi không. Mình sẽ hướng dẫn ứng dụng nó ở bên dưới

Bài 5: Cầu trúc điều kiện if
Nó có ý nghĩa là "Nếu (so sánh) thì (điều kiện được đáp ứng thì chạy không thì dừng)

Nếu thêm else dưới nữa thì thay vì dừng nó sẽ chạy else

Ví dụ:
var a=0
if (a<1) {
iimPlay("imacro.iim");
}

Ví dụ: Với iimGetErrorText();

iimPlay("TAG POS=1 TYPE=INPUT:SUBMIT ATTR=NAME:view_post");
if(iimGetErrorText()=="OK"){ 
//Click được , không bị lỗi! 
iimPlayCode("làm việc khác....") ; 
}
else{
 //Không click được, lỗi 
iimPlayCode("làm việc khác....") ; 
}

Bài học phần 2 dừng tại đây. Lập trình javascript quá rộng nên mình không thể hướng dẫn hết được. Qua các bài học căn bản trên có vẻ đi quá tầm khả năng của newbie. Nếu các bạn không hiểu đoạn nào thì google hoặc bỏ qua cũng đc :D Đây cũng là bài học kết thúc các bài học lập trình imacros căn bản cho người mới. Mình sẽ cập nhật các code imacros trong kho imacros cho các bạn sử dụng !

Chúc các bạn thuận lợi trong công việc

Bài 6: SAVEAS Lệnh lưu thông tin,tập tin trên site vào máy

SAVEAS TYPE=(CPL|HTM|TXT|EXTRACT|PNG|JPEG) FOLDER=folder_name FILE=file_name
TYPE là kiểu dữ liệu:
  • CPL Lưu toàn bộ mã nguồn của trang we
  • HTM tương tự trên nhưng không có hình ảnh
  • TXT Chỉ có văn bản
  • EXTRACT Giá trị của !EXTRACT Được lưu ở định dạng CSV.Lưu ý: giá trị của EXTRACT biến được thiết lập lại sau khi kêu gọi "SAVEAS TYPE=EXTRACT"
  • PNG một ảnh chụp màn hình của trang web được lưu ở dạng PNG
  • JPEG như trên: một ảnh chụp màn hình của trang web được lưu ở dạng JPEG

FOLDER là thư mục lưu file

FILE là tên file

Ví dụ 1:

TAB T=1
URL GOTO=facebook.com
SAVEAS TYPE=CPL FOLDER=D:\ FILE=facebook

Code trên lưu toàn bộ hình ảnh,mã nguồn của facebook.com vào ổ D

Các bạn có thể thử với từng TYPE để hiểu hơn

Ví dụ 2:  EXTRACT
EXTRACT ở đây như một biến.Dùng để kết hợp với nhiều lệnh khác ví dụ bạn dùng lệnh khác tìm hay tạo ra giá trị nào đó và lưu nó vào EXTRACT. Sau đó thông qua EXTRACT thông tin đó được lưu vào máy

EXTRACT  kết hợp khá tốt với lệnh SEARCH và nhiều lệnh khác. Sử dụng lệnh SEARCH tìm thứ cần tìm và dùng SAVEAS TYPE=EXTRACT để lưu lại nó

Bây giờ mình có 1 link profile facebook của một bạn. Mình chuyển qua UID facebook thông qua trang http://findmyfbid.com/ và sau đấy tìm và lưu mã số UID facebook của mình vào file uidfacebook.txt nằm ở ổ D

TAB T=1
URL GOTO=http://findmyfbid.com/
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:url CONTENT=(Địa chỉ profile facebook của bạn)
TAG POS=1 TYPE=BUTTON FORM=NAME:NoFormName ATTR=TXT:Find<SP>numeric<SP>ID<SP>→
SEARCH SOURCE=REGEXP:"<code>([^']+)</code>" IGNORE_CASE=YES EXTRACT=$1
SAVEAS TYPE=EXTRACT FOLDER=D:\ FILE=uidfacebook.txt

Lệnh SEARCH bạn có thể tìm ở bài học trước nhé

19 tháng 9, 2015

Bài 5: !EVAL Lệnh tạo ra giá trị random

Đây là lệnh tạo ra 1 giá trị ngẫu nhiên. Lệnh này làm được khá nhiều việc lấy đơn giản nhất là giúp bạn khó bị nhận diện là robot...

SET !VAR1 EVAL("var min = n; var max = m; var randomNumber = Math.floor(Math.random() * (max - min + 1)) + min; randomNumber;")

Lệnh trên tạo ra biến có giá trị ngẫu nhiên từ n đến m. Ví dụ:

SET !VAR1 EVAL("var min = 50; var max = 100; var randomNumber = Math.floor(Math.random() * (max - min + 1)) + min; randomNumber;")
TAB T=1
URL=whoer.net
WAIT SECONDS={{!VAR1}}

Truy cập vào trang whoer.net và chờ random từ 50-100 giây

Bài 4 : SEARCH Lệnh lấy thông tin trong 1 site

Đây là một lệnh hỗ trợ bạn lấy thông tin ! bạn có thể làm 1 auto get info,...


SEARCH SOURCE=TXT hoặc REGEXP:"Nhận dạng dữ liệu cần lấy" IGNORE_CASE=YES EXTRACT=$1


EXTRACT trong đây đóng vai trò như 1 nơi lưu giữ thông tin tạm thời và $1 chính là thông tin.


Ví dụ:
Mình có 1 địa chỉ profile facebook của 1 bạn và mình cần lấy UID facebook của bạn đấy. Có 1 trang hỗ trợ chuyển URL profile facebook sang UID facebook.
Trang findmyfacebookid.com hỗ trợ làm việc này và mình chỉ cần post URL profile facebook vào và nhấn Find numeric ID là hiển thị UID của URL profile đấy.


Và lệnh SEARCH có vai trò nhận dạng ra vị trí của dãy số UID.


Bạn nhấn view page source ở trang hiển thị UID để xem vị trí nó nằm trong đống code như thế nào. Bạn có thể sử dụng Ctrl + F và paste vào thông tin cần tìm như mã UID hiển thị trang trang.


và mình tìm thấy UID của mình với các dòng code xung quanh
<code>100005640430xxx</code>
Vậy là có thể tìm cách để nhận diện ra vị trí của mã UID facebook rồi


Ta có code sau:


SEARCH SOURCE=REGEXP:"<code>([^><]+)</code>" IGNORE_CASE=YES EXTRACT=$1

([^><]+) có tác dụng là nhận dạng những gì ở giữa 2 <code></code> và lưu vào $1

Lưu ý: Định dạng ([^*]+) Dấu * chứa 2 kí tự bên cạnh ([^*]+).

Bây giờ bạn chạy thử đoạn code này xem UID profile facebook của bạn là gì nhé:


TAB T=1 URL GOTO=http://findmyfbid.com/ TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:url CONTENT=(Địa chỉ profile facebook của bạn)
TAG POS=1 TYPE=BUTTON FORM=NAME:NoFormName ATTR=TXT:Find<SP>numeric<SP>ID<SP>→
SEARCH SOURCE=(REGEXP):"<code>([^><]+)</code>" IGNORE_CASE=YES EXTRACT=$1

Bài 3: Lệnh cấu trúc dữ liệu imacros

Bao gồm:
  1. !DATASOURCE
  2. !DATASOURCE_COLUMNS
  3. !DATASOURCE_LINE
  4. !COLn
Các lệnh này thường đi kèm với nhau trong 1 file imacros.
Bạn có 1 file chứa list sock,hay list account và bạn muốn làm 1 gì đấy với mỗi con(hết con này xong đổi con khac)

SET !DATASOURCE (Địa chỉ file ở đây)
SET !DATASOURCE_COLUMNS {{LOOP}}
SET !DATASOURCE_LINE (Khải báo số cột sử dụng ở đây)

!COLn (n là giá trị ở cột thứ mấy)

SET !DATASOURCE_COLUMNS {{LOOP}} có ý nghĩa là lấy giá trị hàng n ở lần lặp n

Ví dụ: Mình có list 10 acc ở vozforums.com và mình muốn login acc này xong thoát ra và lặp lại 9 lần nữa. Mình có file list.csv(file excel) ở ổ D: chứa 10 account gồm username ở cột 1 và password ở cột 2

SET !DATASOURCE D:\list.csv
SET !DATASOURCE_LINE {{!LOOP}}
SET !DATASOURCE_COLUMNS 2
TAB T=1
URL GOTO=https://vozforums.com/
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:login.php?do=login ATTR=ID:navbar_username CONTENT={{!COL1}}
TAG POS=1 TYPE=INPUT:PASSWORD FORM=ACTION:login.php?do=login ATTR=ID:navbar_password CONTENT={{!COL2}}
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:login.php?do=login ATTR=*
CLEAR
Và mình chạy play(loop) 10 lần

Giải thích:
SET !DATASOURCE D:\list.csv - Khai báo địa chỉ file
SET !DATASOURCE_LINE {{!LOOP}}
SET !DATASOURCE_COLUMNS 2 Khai báo số cột
TAB T=1
URL GOTO=https://vozforums.com/ Truy cập trang vozforums
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:login.php?do=login ATTR=ID:navbar_username CONTENT={{!COL1}} Nhập vào ô username,bạn thấy {{!COL1}} chứ, nó là giá trị ở cột 1 dòng (số lần lặp hiện tại.Ví dụ đang ở lần lặp 2 thì nó lấy ở hàng 2)
TAG POS=1 TYPE=INPUT:PASSWORD FORM=ACTION:login.php?do=login ATTR=ID:navbar_password CONTENT={{!COL2}} Đây cột 2 và cũng tương tự như trên
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:login.php?do=login ATTR=* Ấn nút login
CLEAR xóa sạch cookiem,data trình duyệt

Bài 2: Các lệnh thiết lập cho imacros

Trong bài này mình sẽ dạy các lệnh sau:


    1. !ERRORIGNORE
    2. !URLCURRENT
    3. !USERAGENT
    4. !TIMEOUT 
    5. !TIMEOUT_STEP
    6. !REPLAYSPEED
    SET !ERRORIGNORE YES
    Ví dụ: Code bạn đang chạy tới code nhấn nút like facebook. Và fanpage đó không có nút like và lệnh này không được thực thi -> imacros bị dừng

    Để imacros không bị dừng bạn thêm SET !ERRORIGNORE YES vào đầu file *.iim thì nếu code đấy không thực thi -> imacros sẽ bỏ qua và chạy các code tiếp theo

    !URLCURRENT
    Lệnh này có nghĩa là URL trên tab hiện tại
    Ví dụ:
    TAB T=1
    SET !VAR1 {{!URLCURRENT}}
    TAB OPEN
    TAB T=2
    URL GOTO={{!VAR1}}

    Giải thích: Ở tab 1 mình đã đặt biến !VAR1 là URL của tab 1, sau đó mở tab 2 và truy cập URL trong giá trí !VAR1(URL của tab 1).Có nghĩa là mình sao chép URL tab 1 sang tab 2

    SET !USERAGENT "useragent của máy"
    Lệnh này fake useragent cho trình duyệt của bạn

    SET !TIMEOUT n
    Bạn truy cập vào 1 trang web và trang web ấy load rất lâu. Lệnh này đặt ra thời gian tối đa được load cho trang đấy ! Hết thời gian nó sẽ tiếp tục các code tiếp theo. Đơn vị n là giây

    SET !TIMEOUT_STEP n
    Có 1 code click vào nút like chẳng hạn. Nhưng nút like đấy không tồn tại và code này đang phải tìm nút đấy. mặc định của lệnh này là 1/10 của lệnh SET !TIMEOUT. Đây là lệnh đặt thời gian tối đa có đơn vị là giây

    !REPLAYSPEED
    Tốc độ của imacros ! lệnh này không quan trọng

    Bài 1 - Các lệnh căn bản trên imacros

    Các lệnh căn bản nhất mình dạy trong bài học này gồm:

    1. TAB
    2. TAG
    3. URL
    4. WAIT
    5. REFRESH
    6. BACK
    7. CLEAR
    8. SET\
    9. ADD
    10. LOOP
    11. CLICK
    TAB bao gồm các lệnh:

    1. TAB OPEN: Mở thêm 1 tab mới
    2. TAB T=n: Nhảy tới tab số n. Thay n bằng số. Lưu ý là nếu bạn chỉ có 2 tab đang mở thì không thể nhảy tới tab số 3
    3. TAB CLOSE: Đóng tab hiện tại
    4. TAB CLOSEALLTHERS: Đóng tất cả các tab khác trừ tab hiện tại
    TAG có cấu trúc như sau:
    TAG POS=n TYPE=type [FORM=form] ATTR=attr [CONTENT=some_content]
    Về lệnh này các bạn nên lấy bằng chế độ record. Nó có tác dụng là click vào một cái gì đấy,click vào một nút có nội dung ... chẳng hạn

    URL
    URL GOTO=Link trang web
    URL GOTO=https://www,hocimacros.blogspot.com hay URL GOTO=hocimacros.blogspot.com đều được cả

    WAIT
    WAIT SECONDS=n Chờ n giây.Thay n bằng một số nào đấy

    REFRESH
    Chỉ đơn giản là làm mới lại trang giống nút F5 mà thôi

    BACK
    Quay lại trang trước\

    CLEAR
    Xóa sạch cookie,data trình duyệt

    SET
    Đặt giá trị cho 1 biến
    Ví dụ:
    SET !VAR1 90
    và sau đấy chúng ta có thể mang biến này đi sử dụng kết hợp với các lệnh khác
    WAIT SECONDS={{VAR1}}

    ADD
    Thêm giá trị cho 1 biến nào đấy
    Ví dụ giá trị !VAR1 vừa rồi có giá trị là 90
    ADD !VAR1 20
    Thêm giá trị 20 vào biến !VAR1 và giá trị hiện tại của VAR1 là 110

    LOOP
    Đây là lệnh lặp. Cách ứng dụng đơn giản nhất là đặt SET !LOOP -100 ở cuôi file *.iim thì nó có nghĩa là chạy lặp 100 lần nhưng không chính xác là 100 lần. Nên sử dụng chính xác số lần lặp với file *.iim các bạn nên sử dụng chức năng Play(loop)

    Sau đây sẽ có một số code với file *.iim để các bạn hiểu hơn các lệnh vừa học

    Ví dụ 1: Căn bản nhất
    TAB T=1
    URL GOTO=hocimacros.blogspot.com
    WAIT SECONDS=20
    URL GOTO=whoer.net
    WAIT SECONDS=10
    CLEAR

    Giải thích: Truy cập hocimacros.blogspot.com -> chờ 20 giây -> Truy cập whoer.net -> Chờ 10 giây -> Xóa cookie,data

    Ví dụ 2: Bài học với biến !VAR1 và !VAR2
    TAB T=1
    SET !VAR1 20
    SET !VAR2 15
    URL GOTO=hocimacros.blogspot.com
    REFRESH
    WAIT SECONDS={{VAR1}}
    URL GOTO=whoer.net
    WAIT SECONDS={{VAR2}}
    ADD !VAR1 5
    URL GOTO=hocimacros.blogspot.com
    WAIT SECONDS={{VAR1}}
    BACK
    CLEAR
    SET !LOOP -100

    Giải thích: Đặt !VAR1 có giá trị 20 !VAR2 giá trị 15 -> Truy cập hocimacros.blogspot.com -> Làm mới trang -> Chờ 20 giây -> truy cập whoer.net -> chờ 15 giây -> Thêm giá trị 5 vào biến !VAR1 -> truy cập hocimacros.blogspot.com -> chờ 25 giây -> quay lại trang trước(whoer.net) -> xóa cookie,data -> Tiếp tục lặp lại với 100 lần

    CLICK X=n Y=m

    CLICK vào một vị trí có tọa độ X/Y trên trang web

    Danh sách tổng hợp các lệnh imacros

    Cac bạn nhấn vào link dẫn đến bài viết để hiểu cặn kẽ hơn về các lệnh nhé

    Các lệnh đơn
    1. ADD Bài 1 - Thêm giá trị vào 1 biến
    2. BACK Bài 1 - Lùi lại
    3. CLEAR Bài 1 - Xóa sạch cookie,data trình duyệt
    4. CLICK Bài 1 - Click theo tọa độ X/Y
    5. EVAL Bài 5- Lệnh tạo biến giá trị random
    6. EVENT
    7. EXTRACT
    8. FILEDELETE
    9. FILTER
    10. FRAME
    11. IMAGESEARCH
    12. ONDIALOG
    13. ONDOWNLOAD
    14. ONERRORDIALOG
    15. ONLOGIN
    16. PAUSE
    17. PROMPT - Xuất hiện 1 hộp thoại thông báo hoặc nhập dữ liệu
    18. PROXY - Truy cập trang web thông qua proxy
    19. REFRESH Bài 1 - Làm mới tab hiện tại
    20. SAVEAS Bài 6- lưu một cái gì đó vào máy
    21. SAVEITEM - Lưu 1 tập tin nào đó vào máy
    22. SCREENSHOT
    23. SEARCH Bài 4
    24. SET Bài 1 - Đặt giá trị cho 1 biến nào đó
    25. STOPWATCH
    26. TAB Bài 1 - Quản lí tab
    27. TAG Bài 1 - Thao tác trên trình duyệt như chọn 1 mục nào đó
    28. URL Bài 1 - Truy cập 1 địa chỉ nào đó
    29. VERSION
    30. WAIT Bài 1 - Chờ 1 thời gian trước khi tiếp tục các lệnh tiếp theo. Đơn vị là giây
    Các lệnh xây dựng giá trị
    1. !CLIPBOARD - Thao tác với clipboard của máy
    2. !COLn Bài 3
    3. !DATASOURCE Bài 3
    4. !DATASOURCE_COLUMNS Bài 3
    5. !DATASOURCE_LINE Bài 3
    6. !ENCRYPTION
    7. !ERRORIGNORE Bài 2 - Bỏ qua lỗi
    8. !EXTRACT
    9. !EXTRACT_TEST_POPUP
    10. !FILESTOPWATCH
    11. !FILE_PROFILER
    12. !FOLDER_DATASOURCE
    13. !FOLDER_STOPWATCH
    14. !LOOP Bài 1 - Lặp lại
    15. !NOW
    16. !REPLAYSPEED Bài 2
    17. !SINGLESTEP
    18. !STOPWATCHTIME
    19. !TIMEOUT Bài 2
    20. !TIMEOUT_MACRO
    21. !TIMEOUT_PAGE
    22. !TIMEOUT_STEP Bài 2
    23. !URLCURRENT Bài 2 - URL của tab hiện tại
    24. !USERAGENT Bài 2 - Thay đổi Useragent của máy
    25. !VAR0...!VAR9

    18 tháng 9, 2015

    Fake IP(sock list) và thao tác với từng con sock

    Đầu tiên bạn tạo file (tên bất kì).js với đoạn code sau:
    var pref = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefService);
    for(var i=1;i<=100;i++){
        code="SET !DATASOURCE D:\\listip.txt\n";
        code+="SET !DATASOURCE_LINE "+i+"\n";
        code+="SET !EXTRACT {{!COL1}}";
        iimPlayCode(code);
        var ip=iimGetExtract().split(':');
        var a = pref.getBranch("network.proxy.");
    a. setCharPref("socks", ip[0]);
    a.setIntPref("socks_port", ip[1]);
    a.setIntPref("type", 1);
        iimPlay("thaotac.iim");
    }
    Tiếp theo tạo file thaotac.iim với lệnh mà bạn muôn làm với từng con sock:
    Mình demo nhé:

    TAB T=1
    URL GOTO=whoer.net
    WAIT SECONDS=30
    CLEAR 
     Giải thích: Mỗi khi fake ip với 1 con sock xong sẽ truy cập trang whoer.net và chờ 30 giây. Sau đó xóa cookie,data trình duyệt và tiếp tục lặp lại công việc với những con sock tiếp theo.

    Và không thể thiếu 1 điều nữa là một file listip.txt nằm trong ổ D chứa list socks5 dạng:
    127.0.0.1:1080
    127.0.0.2:1080
    127.0.0.3:1080
    127.0.0.4:1080
    127.0.0.5:1080
    ,...

    Chú ý: Bạn thấy số 100 được bôi đỏ bên trên trong file .js chứ. Nó có nghĩa là lặp lại 100 lần. Bạn thay số đấy bằng số sock bạn bỏ vào file .txt nhé

    Nhớ để file .js và thaotac.iim trong thư mục file imacros(.../Documents\iMacros\Macros)

    Bạn có vấn đề gì thì comment mình sẽ hỗ trợ

    17 tháng 9, 2015

    Wellcome to hocimacros.blogspot.com :D

    Imacros là phần mềm thao tác lên trang web thay thế cho người lặp đi lặp lại giúp bạn đỡ mỏi tay hay thực hiện 1 công việc nhàm chán :D

    Lập trình imacros khá dễ học. Bạn có thể làm được nhiều việc từ dễ dàng cho tới phức tạp bằng lệnh imacros thông thường tới javascript

    Mình sẽ liệt kê một số công việc mà imacros có thể thực hiện được cho các bạn dễ hình dung:
    -Auto like fanpage facebook
    -Auto kết bạn facebook với những URL profile có sẵn trong file danh sách URL profile facebook mà bạn muốn kết bạn
    -Auto fake IP với danh sách SOCKS5 và làm các thao tác với từng con sock một
    -Auto đăng nhập forum với list account trong 1 file text
    -Auto và auto ... :D

    Đây là trang blog mình tổng hợp các kiến thức từ căn bản tới nâng cao imacros với kiến thức,kinh nghiệm mình có được

    Căn bản về sử dụng imacros

    I.Giới thiệu
    Tải addon imacros thì các bạn chỉ việc google "imacros" và tải bản hỗ trợ trên trình duyệt của bạn và mình khuyên để sử dụng imacros trên Firefox để được hỗ trợ đầy đủ nhất có thể

    Thư mục chứa file Imacros: C:\Users\Tên máy tính của bạn\Documents\iMacros\Macros

    Hoặc có thể thay đường link bằng cách mở imacros trên trình duyệt -> Manage -> Setting -> Path -> Sửa lại đường link

    File imacros có 2 loại: đuôi *.js và *.iim.
    *.js được viết bằng javascript
    *.iim viết bằng lệnh imacros thông thường

    Để làm những công việc phức tạp thường phải viết bằng *.js và bên trong có nhúng lệnh imacros thông thường hay nhúng file *.iim vào

    II.Recording imacros
    Đây là cách đơn giản nhất để tạo file imacros bằng việc sao lưu lại thao tác trên website

    Bạn mở Imacros trên trình duyệt, chọn tab Rec -> Record và imacros đang trong chế độ lưu lại thao tác -> Bạn thao tác xong thì chọn Stop ở tab Rec. Bây giờ xuất hiện 1 file #Current.iim, đây là file lưu hết các lệnh mà bạn vừa thực hiện record. Nếu file này có trước đấy thì sau khi thực hiện record file mới sẽ đè lên file cũ nên các bạn chú ý đổi tên file đã record để tránh bị mất

    Record imacros có 3 chế độ. Bạn nhấp vào Record Options ra bảng sau:
    Select the best record mode automatically : Chọn chế độ tốt nhất(nó chính là Conventional recording mode)
    1.Experimental event recording mode
    2.Conventional recording mode
    3.Use X/Y position: Chế độ click theo tọa độ

    III.Chạy file imacros
    Chọn file imacros nhấn Play ở tab Play nó sẽ chạy 1 lần
    Bạn muốn chạy lặp lại nhiều lần thì gõ số lần muốn lặp lại ở ô Max và nhấn Play(loop)