(Newbie) Xin chỉ giáo cách scrape tải image từ url protech by cloudflare

Discussion in 'Hỏi Đáp Kỹ Thuật' started by hamhochoi, Aug 27, 2020.

Tags:
  1. hamhochoi

    hamhochoi Khách Qua Đường

    Hello toàn thể ace cô dì chú bác. Em newbie vừa học python muốn viết tool download ảnh. Nhưng cục nỗi có mấy trang dùng cloudflare nên em đành bó tay.
    Em đã thử hết cfscrape đến cloudscraper nhưng đều bị block:
    Code:
    import random
    import subprocess
    import cloudscraper
    import string
    
    url = "http://imageinstant.com/data/images/17696/603689/001.jpg"
    headers = {
                'User-Agent': "Mozilla/5.0 (X11; U; SunOS sun4m; en-US; rv:1.4b) Gecko/20030517 Mozilla Firebird/0.6",
                'Cache-Control': 'no-cache',
                'Accept-Charset': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7',
                'Referer': 'http://www.google.com/?q=' + random.choice(string.ascii_lowercase),
                'Keep-Alive': str(random.randint(110,120)),
                'Connection': 'keep-alive'
                }
    session = cloudscraper.create_scraper(
          interpreter='nodejs', recaptcha={'provider': 'return_response'}
    )
    session.get(url, headers=headers)
    Báo lỗi: TypeError: __init__() got an unexpected keyword argument 'recaptcha'

    Nên em thử mần mò một lúc mới thấy thằng này: gitmemory.com/issue/codemanki/cloudscraper/254/526000646
    Sau khi đọc thì cũng hiểu sơ sơ về cách hoạt động nhưng vẫn còn non và mơ hồ.
    Em là 1 thằng hamhochoi nên mong cao nhân nào đó dẫn đường 1 bước ạ. Thanks all!
     
  2. hamhochoi

    hamhochoi Khách Qua Đường

    Em test mà ko được bác {adore}
     
  3. thanh858036

    thanh858036 Sơ Nhập Giang Hồ

    bác craw từ trang nào thì fake ref trang đó
     
  4. Hoa Mãn Lâu

    Hoa Mãn Lâu Trưởng Môn

    Thử login vô 1 trang by pass qua cf rồi dùng cookie đó để craw xem vượt qua dc ko thớt?
     
  5. sincos

    sincos Bang Chúng

    Mình cũng vừa gặp case này...... dùng puppeteer nhé...
     
  6. firefox

    firefox Bang Chúng

    Dùng puppeteer quét vài lần là sẽ được, chừng nào được thì lưu cookie lại để scrape bằng http cho lẹ, nhớ xài cùng useragent và ip