freeCodeCamp / freeCodeCamp/devdocs
[low priority refactoring] generalize executing JS during scraping
- Langage dominant
- Ruby
- Étoiles
- 39.5k
- Forks
- 2.6k
- Merge moyen
- 4 j 32 min
- PR mergées (30 j)
- 13
Description
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
Guide de contribution
Ouvrir le guide de contribution
Piste de recherche
Commencez par comparer lib/docs/scrapers/angularjs.rb#L42-L45 avec lib/docs/scrapers/webpack.rb#L43-L46 afin de comprendre les modèles existants d’exécution de JavaScript basés sur Capybara. Analysez l’organisation de la configuration et des helpers des scrapers, puis définissez une approche commune qui préserve le comportement pertinent des scrapers et vérifiez que les scrapers concernés produisent toujours le contenu attendu.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- ruby
- Domaine
- documentation, tooling
- Type d'issue
- Refactorisation
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- À l'abandon
- Clarté
- À clarifier
- Accessibilité débutants
- 25/100