freeCodeCamp / freeCodeCamp/devdocs

[low priority refactoring] generalize executing JS during scraping

Đang mở
#789 1 bình luận 1 reaction 0 người được giao Xem trên GitHub
Ngôn ngữ chính
Ruby
Star
39.5k
Fork
2.6k
Merge trung bình
4 ngày 32 phút
Pull request đã merge (30 ngày)
13

Mô tả

If doc sites use client-side JavaScript to produce or fetch some of their content, we need to launch a headless browser and execute it. Currently scraper subclasses do that individually using capybara, e.g.
https://github.com/freeCodeCamp/devdocs/blob/master/lib/docs/scrapers/angularjs.rb#L42-L45
but it might be better to extract a helper method or config option, a little more like this:
https://github.com/freeCodeCamp/devdocs/blob/master/lib/docs/scrapers/webpack.rb#L43-L46

cc @dangeranger

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Hướng nghiên cứu

Bắt đầu bằng cách so sánh lib/docs/scrapers/angularjs.rb#L42-L45 với lib/docs/scrapers/webpack.rb#L43-L46 để hiểu các mẫu thực thi JavaScript hiện có dựa trên Capybara. Truy vết cách cấu hình scraper và các helper được tổ chức, sau đó xác định một cách tiếp cận dùng chung nhằm bảo toàn hành vi liên quan của scraper và xác minh rằng các scraper bị ảnh hưởng vẫn tạo ra nội dung như mong đợi.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
ruby
Lĩnh vực
documentation, tooling
Loại issue
Tái cấu trúc
Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức độ hoạt động
Đình trệ
Độ rõ ràng
Cần làm rõ
Mức phù hợp với người mới
25/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.