1. Tải bản cài đặt AutoIT mới nhất

    Chào Khách. Nếu bạn mới tham gia và chưa cài đặt AutoIT.
    Vui lòng vào topic trên để tải bản AutoIT mới nhất nhé
    Dismiss Notice
  2. Quy định và nội quy

    Chào Khách. Vui lòng đọc kỹ nội quy và quy định của diễn đàn
    Để tránh bị ban một cách đáng tiếc nhé!
    Dismiss Notice
  3. Hướng dẫn chèn mã AutoIT trong diễn đàn

    Chào Khách. Vui lòng xem qua bài viết này
    Để biết cách chèn mã AutoIT trong diễn đàn bạn nhé :)
    Dismiss Notice

Hướng dẫn [v14.0.6 - 23/7/2019] HttpRequest cho người mới bắt đầu - Ví dụ, hình ảnh chi tiết

Thảo luận trong 'Hướng dẫn - Bài tập căn bản' bắt đầu bởi Huân Hoàng, 13/3/16.

  1. DuyMinh

    DuyMinh Thành viên năng động
    • 28/34

    Tham gia ngày:
    14/3/17
    Bài viết:
    177
    Đã được thích:
    92
    Giống hàm ClearCookies... Vì WinHTTP tự lưu cookies lại trong cache nên thường muốn request mới thì phải clear.
     
  2. Quản lượng

    Quản lượng qlf
    • 18/23

    Tham gia ngày:
    27/4/17
    Bài viết:
    74
    Đã được thích:
    39
    Bác giúp em cái này với. Em cảm ơn trước =))

    [​IMG]

    [​IMG]

    Mã (AutoIt):
    #include<_httprequest.au3>

    _FileWrite_Test(_HttpRequest(2,'https://xtgem.com/register','','','','Connection: keep-alive|Upgrade-Insecure-Requests: 1'))
     
  3. emga9xkc

    emga9xkc Thành viên năng động
    • 43/45

    Tham gia ngày:
    7/3/16
    Bài viết:
    232
    Đã được thích:
    205
    xtgem xài giao diện moblie thui ^^
     
    Quản lượng thích bài này.
  4. Huân Hoàng

    Huân Hoàng Administrator Thành viên BQT Administrator Super Moderator
    • 93/113

    Tham gia ngày:
    29/9/15
    Bài viết:
    642
    Đã được thích:
    1,181
    Dễ mà nhể, nó báo thiếu header Accept thì thým thêm header Accept vào như nó bảo là xong chứ có gì đâu :|

    Mã (AutoIt):
    #include<_httprequest.au3>

    _FileWrite_Test(_HttpRequest(2,'https://xtgem.com/register','','','','Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8'))
    P/S Dù sao thì câu hỏi này cũng là một gợi ý hay cho phiên bản _HttpRequest tiếp theo, iêm sẽ thêm 'Accept: */*' làm mặc định để tránh mấy trường hợp này :D
     
    Quản lượng thích bài này.
  5. duc

    duc Thành viên
    • 8/11

    Tham gia ngày:
    28/2/16
    Bài viết:
    38
    Đã được thích:
    23
    Sư phụ ơi , _Httprequest ấy ạ :D , em dùng thêm coproc vào nữa , để request ấy ạ , sao lâu lâu nó trả về empty data thế ạ :(
     
  6. Huân Hoàng

    Huân Hoàng Administrator Thành viên BQT Administrator Super Moderator
    • 93/113

    Tham gia ngày:
    29/9/15
    Bài viết:
    642
    Đã được thích:
    1,181
    Coproc nó xử lý qua một GUI ẩn làm trung gian (ví dụ 2 proc A và B trao đổi dữ liệu bằng cách: proc A truyền dữ liệu đến GUI ẩn, proc B đọc dữ liệu từ GUI ẩn này), cùi mía, chậm và khó xài, muốn get/post dữ liệu tuần tự (nếu bắt buộc) phải code mắc mệt luôn :v iêm đang phát triển một dự án MultiProcess trong đó các Process có thể trao đổi dữ liệu thông qua bộ nhớ của tụi nó luôn (được làm dựa trên UDF _SharedVar), có thể xử lý đồng bộ và bất đồng bộ dữ liệu trao đổi, ứng dụng tạo code tải file đa luồng như IDM... Sẽ release sớm UDF và viết bài hướng dẫn trong thời gian gần + Release UDF _HttpRequest bản 12. Thým chờ trong khoảng tuần này là có.

    *Code mẫu MultiProc feat HttpRequest: GET và lấy tiêu đề các bài viết của 51 trang VN-Zoom (box Máy ảnh) trong 3-4s:
    http://code.autoit.ml/7
     
    Quản lượng thích bài này.
  7. duc

    duc Thành viên
    • 8/11

    Tham gia ngày:
    28/2/16
    Bài viết:
    38
    Đã được thích:
    23
    kkkkk demo thế là quá ngon r a :D chờ ra bài hd chi tiết nữa là ngon , :v e lấy code demo sài trc đây kkkkk
     
  8. duc

    duc Thành viên
    • 8/11

    Tham gia ngày:
    28/2/16
    Bài viết:
    38
    Đã được thích:
    23
    a Huân Hoàng cho em phát với :(:(:(:( , e code theo ví dụ nhưng kq nó chỉ lấy ra theo số lượng của biến $slProc , dữ liệu e cần lấy lên đến 530 :v , nhưng khi chờ 1 thời gian nó ra có 20 kq:(:(:(:(
     
  9. DuyMinh

    DuyMinh Thành viên năng động
    • 28/34

    Tham gia ngày:
    14/3/17
    Bài viết:
    177
    Đã được thích:
    92
    Chờ đi thím Huân viết doc đi... Chưa biết xài mò khổ lắm. :))
     
  10. Phương Simon

    Phương Simon Thành viên mới
    • 3/6

    Tham gia ngày:
    21/3/16
    Bài viết:
    19
    Đã được thích:
    8
    Mấy bác cho em hỏi sao Autoit em GET tới trang website này https://elements.envato.com/ không có gì hết vậy ? Em test GET bên C# thì vẫn GET được bình thường ? Mong các bác giải thik hộ, cám ơn !
     
  11. Huân Hoàng

    Huân Hoàng Administrator Thành viên BQT Administrator Super Moderator
    • 93/113

    Tham gia ngày:
    29/9/15
    Bài viết:
    642
    Đã được thích:
    1,181
    WinHttp hiện tại nền tảng của nó đã quá lỗi thời so với các trang web hiện nay rồi, một số trang https không thể dùng WinHttp để truy cập vào được, mặc dù đã bật hết các tính năng như: USE_SECURE_PROTOCOLS = ALL (TSL, SSL2, SSL3...), OPTION_SECURITY_FLAGS = SECURITY_FLAG_IGNORE_ALL (bỏ qua mọi cảnh báo khi truy cập https) nên vấn đề này không giải quyết được trừ khi dùng các nền tảng khác. Hiện nay iêm đang làm mới lại bản _HttpRequest dựa trên WinInet và 1 bản request mới dựa trên cURL, cả 2 bản này đều có thể truy cập tốt những trang https mà WinHttp không rq được.

    + _HttpRequest dựa trên WinInet:

    [​IMG]

    + Request với cURL, hiện đã làm xong nhưng vẫn còn trong giai đoạn test lỗi sẽ đăng sau:

    [​IMG]


    ***Edit bài: _HttpRequest ver12 đã request được trang elements.envato.com này (sau khi thay đổi về Option SSL/TLS)
     
  12. Nguyễn Văn Tất

    Nguyễn Văn Tất Thành viên
    • 8/11

    Tham gia ngày:
    7/1/17
    Bài viết:
    62
    Đã được thích:
    5
    Cho em hỏi _GetHiddenValues(($sURL, $sPaternVal0 = '', $sPaternVal1 =...) $sPaternVal0 là cái gì vậy ạ ?
     
  13. DuyMinh

    DuyMinh Thành viên năng động
    • 28/34

    Tham gia ngày:
    14/3/17
    Bài viết:
    177
    Đã được thích:
    92
    Lấy giá trị hidden từ source thôi, đôi lúc có vài trang cần nó để post... Không cần quan tâm cũng được.
     
  14. Phương Simon

    Phương Simon Thành viên mới
    • 3/6

    Tham gia ngày:
    21/3/16
    Bài viết:
    19
    Đã được thích:
    8
  15. Huân Hoàng

    Huân Hoàng Administrator Thành viên BQT Administrator Super Moderator
    • 93/113

    Tham gia ngày:
    29/9/15
    Bài viết:
    642
    Đã được thích:
    1,181
    Từ câu hỏi của thým iêm dò lại code và phát hiện UDF sai ở dòng:
    Mã (AutoIt):
    $lenDomain = StringLen(StringRegExpReplace($URL_Domain, 'https?://([^\/]+)/', '$1'))
    => StringRegExpReplace sai dẫn đến sai độ dài => sai answer

    Đã fix và up lại: https://autoitvn.com/threads/thuat-toan-_httprequest-bypass-cloudflare.847

    :v
     
    Phương Simon thích bài này.
  16. Đức Trần

    Đức Trần Thành viên mới
    • 3/6

    Tham gia ngày:
    12/8/17
    Bài viết:
    14
    Đã được thích:
    10
    anh Huân Hoàng cho em hỏi với , sao UDF của anh ý , e request vài trăm lần lên 1 web thì nó hay bị rỗng data , Error 3 , 6 , vậy anh :(
     
  17. DuyMinh

    DuyMinh Thành viên năng động
    • 28/34

    Tham gia ngày:
    14/3/17
    Bài viết:
    177
    Đã được thích:
    92
    Request chậm lại. @@
     
  18. Huân Hoàng

    Huân Hoàng Administrator Thành viên BQT Administrator Super Moderator
    • 93/113

    Tham gia ngày:
    29/9/15
    Bài viết:
    642
    Đã được thích:
    1,181
    Thým request liên tục trang web thì trang đó nó chặn IP của thým chứ sao nữa =))
     
  19. Đức Trần

    Đức Trần Thành viên mới
    • 3/6

    Tham gia ngày:
    12/8/17
    Bài viết:
    14
    Đã được thích:
    10
    cung the ak kkkk

    @@
     
    Last edited by a moderator: 24/8/17
  20. phamthach217

    phamthach217 Thành viên mới
    • 1/6

    Tham gia ngày:
    25/8/17
    Bài viết:
    1
    Đã được thích:
    0
    bài viết rất hay
     

Chia sẻ trang này

Đang tải...