Un petit package Python que j'ai fait pour extraire le contenu HTML à partir des pages Web. Il est très personnalisable et j'ai réussi à répondre à mes besoins (extraire le code de plusieurs pages à Markdown, mais seulement quelques balises HTML dont j'avais besoin). En raison de son objectif, il est capable de convertir des balises HTML spécifiques en format de démarque souhaité, ce script ne génère aucune sortie standard, il utilise plutôt des jetons personnalisés spécifiés dans un fichier de configuration, de sorte que la sortie peut être formatée en n'importe quoi.
Pour utiliser ce package, vous devrez l'installer à l'aide de pip :
pip install markout-htmlEnsuite, importez-le dans votre code:
from markout_html import * Après cela, vous pouvez utiliser les fonctions extract_url et extract_html :
result = extract_url (
# HTML page link
'http://example.page.com/blog/some_post.html' ,
# Tokens to format each HTML tags contents (you can extract only the ones you want)
{
'p' : " n ** {} **"
},
# Only extract contents inside this tag
'article'
)
result = extract_html (
# HTML code string
'<html>some html code</html>' ,
# Tokens to format each HTML tags contents (you can extract only the ones you want)
{
'p' : " n ** {} **"
},
# Only extract contents inside this tag
'article'
)Voici quelques exemples avec une meilleure description sur la façon d'utiliser cette commande de package si vous ne souhaitez pas créer un script Python!
Si vous souhaitez simplement extraire à l'aide d'une chaîne dans le terminal, vous pouvez utiliser markout_html --extract [string] .
Vous pouvez utiliser la commande markout_html avec l'indicateur --help pour plus d'informations.
Toutes les configurations peuvent être trouvées dans un seul fichier: .markoutrc.json (vous pouvez spécifier un autre nom dans le terminal avec l'indicateur --config ), si vous ne chargez pas de fichier de configuration, le script utilisera ses valeurs par défaut. Il y a un exemple de configuration dans la racine du référentiel!
Pour spécifier une autre utilisation du fichier de configuration:
markout_html --config [filename] links - Objet des liens à extraire, chaque lien a une valeur de destination (fichier de sortie). Exemple:
{
"links" : {
"http://example.page.com/blog/some_post.html" : " out/post.md " ,
"http://example.page.com/blog/some_other_post.html" : " out/other_post.md "
}
} L'exemple ci-dessus obtiendra le HTML de http://example.page.com/blog/some_post.html et extraire les résultats dans out/post.md
only_on - chaîne qui spécifie d'où (quelle balise html) pour extraire le contenu de (par exemple: html, corps, main). Exemple:
{
"only_on" : " article "
} tokens - Objet dans lequel chaque balise HTML spécifiée sera extraite dans une chaîne formatée, puis placée sur le fichier de sortie. Exemple:
{
"tokens" : {
"header" : " # {} " ,
"h1" : " n # {} " ,
"h2" : " n # {} " ,
"b" : " n ## {} " ,
"li" : " + {} " ,
"i" : " ** {} ** " ,
"p" : " n {} " ,
"span" : " {} "
}
} Sur l'exemple ci-dessus, le contenu de la balise HTML <header> sera extrait dans la chaîne # {} , donc par exemple, si nous avions <header>Some text here!</header> Le résultat aurait été # Some text here! (Cela formate le texte dans Markdown).
N'hésitez pas à quitter votre contribution ici, je l'apprécierais vraiment! De plus, si vous avez des doutes ou des problèmes en utilisant ce package, contactez-moi ou laissez un problème.