Thảo luận crawl similarweb.com

Discussion in 'Hỏi Đáp Kỹ Thuật' started by command, Dec 10, 2018.

  1. command

    command Bang Chúng

    Xin chào,

    Có ae nào đã crawl được dữ liệu của thằng này chưa? Mình đang tò mò nó phát hiện crawler bằng cách nào?

    Crawler mình dùng User-Agent của các trình duyệt và ngẫu nhiên IP rồi, nhưng có vẽ như similarweb chỉ cho phép truy cập khi trình duyệt bật Javascript (mà crawler mình thì ko chạy được JS) nên nó chặn với mã 405. Các bạn có thể crawl thằng này ko? Có bạn nào từng dùng crawler kết hợp với 1 JS service như PhantomJS hoặc Splash hoặc công cụ tương tự chưa? Xin hãy tư vấn và chia sẻ, thanks.

    Đây là hình ảnh mã code 405 mà similarweb trả về:
    [​IMG]
     
    Last edited: Dec 10, 2018
  2. console

    console Bang Chúng

    Anh thử qua api của nó chưa anh
     
    command likes this.
  3. Nai

    Nai MiddleMan Staff Member

    Có Admin @Hoa Mãn Lâu hôm trước đăng bài đang nghiên cứu thằng này, ko biết giờ xong chưa
     
  4. thitgaluoc

    thitgaluoc Hương Chủ

    selenium k đc à bác?
     
    command likes this.
  5. Hoa Mãn Lâu

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

    nhat.itsuper and command like this.
  6. command

    command Bang Chúng

    Thanks @Hoa Mãn Lâu vaf @console, như console chia sẻ, API chỉ giải quyết một ít vấn đề crawl thằng này. Để crawl đa số data thằng này, chắc chắn cần danh sách các websites, từ đó, chúng ta lấy data của từng website. Ví dụ như crawler sẽ lấy danh sách websites từ https://www.similarweb_com/top-websites/category/beauty-and-fitness/beauty. Sau đó crawl từng websites và lấy từng categories và related sites để tiếp tục việc crawl. Việc này API của similarweb ko làm được.

    Mình chưa dùng Selenium bao giờ, cũng như PhantomJS và Splash, nên mình hỏi thử có bác nào đã dùng và chia sẻ các tools này hoặc tương tự để xử lý việc crawl các JS page
     
    Last edited: Dec 11, 2018
  7. thitgaluoc

    thitgaluoc Hương Chủ

    em đang dùng selenium, thực ra thì phantomjs là một cái headless browser thôi, selenium nó là module có thể điều khiển các loại headless này. em đang kết hợp selenium với chromedriver và geckodriver (firefox) cho hiệu quả khá tốt :D bản chất nó là browser nên render js nó cũng là cái điều bt thôi :D nhưng ăn ram kinh lắm
     
  8. command

    command Bang Chúng

    Mình thấy vài bài viết nói Selenium hỗ trợ nhiều nên khá cồng kề, trong khi mình chỉ cần nó render được JS là được và mình vừa crawl được site similarweb qua Splash (https://splash.readthedocs.io/en/stable/index.html ) rồi, cấu hình crawl 1 requests/s nhé. Hihi

    Tóm lại để crawl được similarweb hoặc bất kỳ trang nào chặn bot bởi JS thì bạn cần trọn bộ 3 thứ sau (nếu bạn ko đủ có 3 thứ này thì có lẽ vô vọng crawl thằng này nhé):
    - JS rendering service như Splash (mình dùng) hoặc Selenium hoặc công cụ tương tự.
    - 1 IP/request: dùng proxy rotation service
    - Random user agent

    Happy autoblog ^^

    [​IMG]
    [​IMG]
     
    Last edited: Dec 12, 2018
  9. thitgaluoc

    thitgaluoc Hương Chủ

    proxy rotation service bác sử dụng cái nào vậy? :D
     
  10. console

    console Bang Chúng

    stormproxies .com
     
    Vito_King likes this.
  11. Phan Thị

    Phan Thị Bang Chúng

    Bạn nào dùng ít nên dùng thằng này nó tính tiền theo request bạn nào craw site thôi thì nhẹ nhàng hơn reg theo link aff minh nhe
     
  12. command

    command Bang Chúng

    Bác console có chia sẻ rồi nhé, cụ thể mình dùng gói http://stormproxies. com/rotating_reverse_proxies.html
     
    automan likes this.
  13. Phan Thị

    Phan Thị Bang Chúng

    Bạn dùng gói nào vậy. Trc mình dùng bên này nhưng không ngon lắm.
     
  14. princenuce

    princenuce Sơ Nhập Giang Hồ

    Bởi vì thằng similarweb khi vào trang chủ nó còn sử dụng js để khởi tạo 1 loạt các UID gắn chặt với trình duyệt nên curl trực tiếp nó la ko thể, phải lách {brick}
     
  15. Trần Trọng Bách

    Trần Trọng Bách Sơ Nhập Giang Hồ

    thằng này crawl được google không bạn?
     
  16. command

    command Bang Chúng

    Mình dùng gói rẻ nhất, $39/m ^^
     
  17. console

    console Bang Chúng

    gói đó chưa rẻ anh hehe, có gói test 14$
     
  18. automan

    automan Hương Chủ

    có giới hạn time gì không @console, sao vào trang chủ nó không thấy link gói đó nhỉ {ops}
     
  19. Nai

    Nai MiddleMan Staff Member

    Chữ chút xíu thoai, cụ test thử 2 3 gói 1 lúc luôn. Gói nào ok thì nói refund mấy gói còn lại
    upload_2018-12-17_16-20-39.png
     
    automan likes this.