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. 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
    Bác Huân ơi!
    _HttpRequest_BypassCloudflare('https://anime47.com/') => ! _HttpRequest_BypassCloudflare - Warning: 6
    mất rồi, cloundflare mới update hả bác
     
  2. 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 xài bản mấy, bản mới nhất (14) đã cập nhật và chạy bình thường, bản 13 thì lỗi nhoé.
    Mà nhìn cái thông báo thým nói thì chắc bản cũ rồi =))
     
  3. 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
    Chỉnh sửa cuối: 21/11/18
  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
    Pic thứ 1: Thým vào UDF xoá dòng MsgBox đó giúp iêm, bản sau iêm cũng bỏ dòng Msgbox đó.
    Pic thứ 2: Lỗi tại thým đó chứ, sao lại "http://autoitvn.com/' đầu nháy kép, cuối nháy đơn thế kia :v
    P/S: À, máy thým Console thông báo tiếng Việt ổn không ? Chụp ảnh khi chạy code này giúp iêm với:
    Mã (AutoIt):
    _HttpRequest_CnnsoleWrite('Tiếng Việt')
     
  5. 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
    Chỉnh sửa cuối: 21/11/18
    Huân Hoàng thích bài này.
  6. sgdavid

    sgdavid Thành viên
    • 8/11

    Tham gia ngày:
    23/10/15
    Bài viết:
    28
    Đã được thích:
    12
  7. longtu

    longtu Thành viên
    • 18/23

    Tham gia ngày:
    9/8/17
    Bài viết:
    67
    Đã được thích:
    37
    tui từng bị lỗi này, thêm / ở cuối đường link là ra: http://www.anime47.com/

    edit: chắc k fải là lỗi, nó là ObjectName. bác @Huân Hoàng nghiên cứu lại chỗ này để fix đi
     
    Huân Hoàng and Phương Simon like this.
  8. 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

    Cám ơn bạn! Mình cũng gặp lỗi này khi làm với lazada rồi mà quên mất :v không nghĩ là là nó cũng cần thêm / ở cuối link ^^~
     
    longtu thích bài này.
  9. 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
    À, cảm ơn 2 thým, iêm tìm tới tìm lui không rõ nguyên nhân, cuối cùng lòi ra nó gặp vấn đề là do header Referer nó yêu cầu phải có / ở cuối mới request thành công, bó tay → thêm vào như hình và đã fix được lỗi, giờ thì nạp vô URL lỡ có thiếu dấu / ở cuối thì vẫn request OK :v​

    [​IMG]

    Bên cạnh đó iêm cũng vừa update _HttpRequest 14.0.1 rồi. Khi sử dụng _HttpRequest thì nó sẽ hiện Msgbox thông báo có cập nhật hoặc vào trang 1 tải về.
     
    Phương Simon thích bài này.
  10. haha

    haha Thành viên mới
    • 3/6

    Tham gia ngày:
    4/10/18
    Bài viết:
    8
    Đã được thích:
    1
    Cảm ơn bro. Iêm làm thành công rồi. Tất cả chỉ là do cái click trackingParams em k tìm đúng giá trị. Nhờ bro mà iêm đã làm thành công. Với thêm nữa là hiện iêm chưa thấy có api sub youtube nên chỉ có thể request như vậy thôi.
    Vấn đề tiếp theo em muốn hỏi là em có request login đến textnow.
    Mã (Text):
    POST https://electron.textnow.com/api/sessions HTTP/1.1
    Host: electron.textnow.com
    Connection: keep-alive
    Content-Length: 113
    Origin: https://electron.textnow.com
    X-XSRF-TOKEN: 6sPs3uZl-_hpxtu-gTnETuEvk1ePxiEhqH_s
    X-CSRF-TOKEN: 6sPs3uZl-_hpxtu-gTnETuEvk1ePxiEhqH_s
    User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) TextNow/2.0.1 Chrome/66.0.3359.181 Electron/3.0.5 Safari/537.36
    Content-Type: application/x-www-form-urlencoded; charset=UTF-8
    Accept: application/json, text/plain, */*
    X-TN-Captcha-V3: 03ADlfD19atQWh3xMPduAcvkhdr5IC-j7VXBJHeTLd1Y55k45qjQjBauhDaXEOzCljzS6zW8sOwe-7uxhqAbF1QsxFCGxKdRHjcEbJjdXVqxOdA8jbzgSTI9WurOmCFUEtso8u4oslhejOXSniqN8uYQIR79qDU5rQHopHmH4M78H1EtVUdp8-4ieGKGN205KwjPFYlMSHHyRL3yEUTCII1eGugmPRZIPpTFZclwVqdaFZIi43htEL2-0EXJUziLP7rs0YuzMxEkGuCdpKluoO8roKS6SBWnXRuI1z0egIFHP6SDeJXbIEZ6g
    Referer: https://electron.textnow.com/login?desktop
    Accept-Encoding: gzip, deflate
    Accept-Language: en-US
    Cookie: G_ENABLED_IDPS=google; __gads=ID=585264e7cdd021fe:T=1540048461:S=ALNI_Mb6wnjB6qem541Lp--9xF8HX55w-w; _ga=GA1.2.867471706.1539961645; UserDidVisitApp=true; tnExp%3AThumbnailExperiment=1; tnExp%3AEmojiOneExperiment=1; d7s_uid=jnhl36tnwgm2ba; unsupported_browsers_notif=true; _gid=GA1.2.699642874.1542847217; sm_dapi_session=1; puntCookie=true; _fbp=fb.1.1542901741982.1443151552; isMobileApp=true; language=en; __rtgt_sid=jostlr0vcca8uc; d7s_spc=1; FirehoseSession-portal=true; XSRF-TOKEN=6sPs3uZl-_hpxtu-gTnETuEvk1ePxiEhqH_s; connect.sid=s%3Aopy8V7EXPYLcm2XC8wi6ewi4occirkCk.wpKDDWviGnhq%2F%2BnUrwVzMskOYZf2VupkgbQz%2FdwSLvA
    Nó yêu cầu cần X-TN-Captcha-V3 mà ở header em k tìm đc giá trị này. Dùng liveheader thì có. Mọi cái khác đều có. Nhưng dùng httprequest.au3 thì nó k trả về giá trị này. Mong bro giúp đỡ.
     
  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
    Hiển nhiên là không có rồi, cái tên nói lên tất cả: X-TN-Captcha-V3 → Nó là giá trị trả về của việc giải 1 loại captcha nào đó → Để biết loại captcha gì thì xem source trang login, ta thấy:

    [​IMG]
    → Hic, lòi hẳn ra chính là ReCaptcha kiểu Invisible. Mà đụng đến anh Google là thấy chua lét rồi đấy :D
    → Tìm hiểu loại Recaptcha này thì ta sẽ vào trang hướng dẫn của Google-sama: https://developers.google.com/recaptcha/docs/invisible#programmatic_execute
    → Cách giải cũng đơn giản ấy nhỉ :p → Thế là iêm lại cập nhật thêm tính năng mới cho hàm _IE_RecaptchaBox đã có trong UDF _HttpRequest ver14
    [​IMG]

    Dữ liệu trên thým thấy gần như tương tự Live HTTP Headers rồi phải không :D

    → Tải bản cập nhật ở tập tin đính kèm bên dưới để có thêm tính năng giải ReCaptcha kiểu Invisible

    Chú ý: Hàm _IE_RecaptchaBox yêu cầu Win7 trở lên và IE9 trở lên, nếu báo lỗi thì tải và cài IE11 (mới nhất) vào.
     

    Các file đính kèm:

  12. haha

    haha Thành viên mới
    • 3/6

    Tham gia ngày:
    4/10/18
    Bài viết:
    8
    Đã được thích:
    1
    Mã (AutoIt):
    _HttpRequest(2,'https://electron.textnow.com/api/sessions',$data,'','https://electron.textnow.com/login?desktop','X-XSRF-TOKEN: '&$token&'|'&'X-CSRF-TOKEN: '&$token&'|'&'|'&'X-TN-Captcha-V3: '&$recaptcha)
    Sao em vẫn k thể truy cập đc nhỉ bro. có đủ cả rồi.

    Console: _HttpRequest : electron.textnow.com yêu cầu phải có quyền truy cập
    Data: {"result":"Captcha Header Validation Failed","error_code":"INVALID_PASSWORD"}
     
  13. 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 tải _HttpRequest mới bên dưới (fix hàm _IE_RecaptchaBox chạy ổn định hơn + thêm mode lấy all cookies từ IE) rồi chạy code bên dưới. Sau đó thým chụp lại cái ảnh MsgBox(4096, 'Request Header', $requestHeader) rồi đăng lên đây, iêm xem để đoán định tí.
    Mã (AutoIt):
    #include <_HttpRequest.au3>

    $sUsername = ''
    $sPass = ''

    $sUrl = 'https://electron.textnow.com/login'
    $g_captcha = _IE_RecaptchaBox($sUrl, True)
    If @error Then Exit MsgBox(4096, 'Thông báo', 'Có lỗi xảy ra')
    $g_captcha_response = $g_captcha[0]
    $Cookie = $g_captcha[2]

    $X_XSRF_TOKEN = StringRegExp($Cookie, 'XSRF-TOKEN=(.*?);', 1)[0]

    $Data = _HttpRequest(2, 'https://electron.textnow.com/api/sessions', 'json=' & _URIEncode('{"username":"' & $sUsername & '","remember":true,"password":"' & $sPass & '"}'), $Cookie, $sUrl, 'Accept: application/json, text/plain, */*|X-CSRF-TOKEN: ' & $X_XSRF_TOKEN & '|X-TN-Captcha-V3: ' & $g_captcha_response & '|X-XSRF-TOKEN: ' & $X_XSRF_TOKEN)

    $requestHeader = _HttpRequest_QueryHeaders(-1)
    MsgBox(4096, 'Request Header', $requestHeader)

    $ResponseHeader = _HttpRequest_QueryHeaders()
    MsgBox(4096, 'Response Header', $ResponseHeader)

    MsgBox(4096, 'Data', $Data)
     
     

    Các file đính kèm:

  14. haha

    haha Thành viên mới
    • 3/6

    Tham gia ngày:
    4/10/18
    Bài viết:
    8
    Đã được thích:
    1
    [​IMG]
     
  15. sgdavid

    sgdavid Thành viên
    • 8/11

    Tham gia ngày:
    23/10/15
    Bài viết:
    28
    Đã được thích:
    12
    Làm sao để lấy cái Request Hearder với Reponse Header vậy bạn ?
     
  16. haha

    haha Thành viên mới
    • 3/6

    Tham gia ngày:
    4/10/18
    Bài viết:
    8
    Đã được thích:
    1
    $iReturn = 1 bro. xem code ở trên có đó
     
    sgdavid thích bài này.
  17. Ngocsky

    Ngocsky Thành viên mới
    • 3/6

    Tham gia ngày:
    12/3/18
    Bài viết:
    12
    Đã được thích:
    2
    :rolleyes::rolleyes::rolleyes::rolleyes::rolleyes:
     
  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
    <3 Ngọc sky <3 hu hu iêm ế quá, thým là gái và chưa có bồ thì cho iêm làm quen để thoát ế lào :((
     
  19. 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

    thua, nó xử lý js cái g-captcha-response rồi

    [​IMG]


    [​IMG]



    [​IMG]

    iêm bó tay không giúp thým tiếp được vụ này rồi :v kiếm mấy cái API Textnow trên Github làm thôi :v
     
  20. haha

    haha Thành viên mới
    • 3/6

    Tham gia ngày:
    4/10/18
    Bài viết:
    8
    Đã được thích:
    1
    iêm làm đc textnow bằng api rồi. nhưng giờ iêm muốn tự dùng fidder để debug nó ra mà k đc.sad quá. iêm nằm mơ thấy thím bảo bó tay nữa chớ. tỉnh dậy thấy đúng là bó tay thiệt. hihi
     

Chia sẻ trang này

Đang tải...