freeCodeCamp / freeCodeCamp/devdocs

[low priority refactoring] generalize executing JS during scraping

Ouverte
#789 1 commentaire 1 réaction 0 personnes assignées Voir sur GitHub
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

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.