Script pour copier du texte sur une page web
Résolu/Ferméjordane45 Messages postés 38397 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 29 janvier 2025 - 7 nov. 2023 à 00:15
- Script pour copier du texte sur une page web
- Comment supprimer une page sur word - Guide
- Script vidéo youtube - Guide
- Traduire une page web - Guide
- Copier texte pdf - Guide
- Comment copier une vidéo youtube - Guide
7 réponses
14 sept. 2023 à 00:38
Le plus simple sinon c'est d'installer une extension du style :
- https://chrome.google.com/webstore/detail/allow-right-click/hnafhkjheookmokbkpnfpmemlppjdgoi/related
Ensuite, lorsque tu visites le site, clique sur l'icône de l'extension pour restaurer la sélection, la copie et le clic droit.
Tu pourras alors sélectionner le texte que tu veux copier, et le copier dans un document texte (par exemple).
Sinon si tu veux sauvergarder des sites pour les consulters hors ligne, je te conseille une application du style WebCopy, SiteSucker, ou ArchiveBox.
14 sept. 2023 à 06:41
Bonjour
Il ne faut pas utiliser les raccourcis clavier.... mais lire le code source de la page.
Regarde cette discussion et essaye d'en adapter le code à tes besoins
https://www.autohotkey.com/board/topic/67822-reading-text-from-webpage/
Modifié le 28 sept. 2023 à 11:16
Salut.
En AutoIT, c'est faisaible, facilement. En autohotkey aussi, par principe.
Même principe qu'énoncé par jordane45 : la lecture du code source de la page.
Pas besoin de faire un sleep, ni de lancer un navigateur. (EDIT : Ah si ^^)
Tu dis ceci :
je voudrais que ça commence à copier le texte à partir du texte en gras<h2> jusqu'en bas de la page juste au-dessus du logo "Buy me a coffee"
1. Tu copies le code source de la page, que tu déclares dans une variable.
2. Ne pas oublier que c'est du html : il est fort probablement que la ligne contenant ce que tu recherches, possèdes une balise qui n'existe pas ailleurs. Il faut donc s'en servir justement pour récupérer la (ou les) ligne(s).
-------------------
EDIT :
En recherchant <h2> : la première ligne, c'est le nom du chapitre. Tu déclares dans une boucle; une fois le premier résultat trouvé, tu quittes la boucle, pour ne récupérer uniquement ce que tu voulais.
En recherchant <p> : tu as l'histoire complète, ligne par ligne. A toi de les récupérer ^^
Avec ceci, tu peux donc créer un fichier texte et voilà
++
29 sept. 2023 à 11:04
Petite remarque, mais importante.
Il y a un autre site, qui diffuse le même contenu.
Sans la protection "humaine" cloudflare.
Ca aide grandement pour simplifier le script
https://www.fortuneeternal.com/novel/how-to-ruin-a-love-comedy-mtl/chapter-0/
++
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question6 nov. 2023 à 10:25
Salut et merci pour le retour.
Je garde pour moi le script ^^
Bonne journée.
Modifié le 7 nov. 2023 à 00:16
Yo.
Voici le script en question (En AutoIt).
#include <IE.au3> #include <MsgBoxConstants.au3> #include <GUIConstantsEx.au3> #include <WindowsConstants.au3> #Region ### START Koda GUI section ### Form= Global $Form1 = GUICreate("Form1", 600, 600, 192, 124) GUISetFont(9, 500, 0, "comic sans ms") GUICtrlCreateLabel("Chapitre", 5, 7.5, 60, 20) $cChap = GUICtrlCreateCombo("", 70, 5, 500, 20) $sauvegarder_chap_sel = GUICtrlCreateButton("Récupérer le chapitre sélectionné", 5, 40, 250, 25) $edit = GUICtrlCreateEdit("", 0, 70, 600, 600) ListingChap() GUISetState(@SW_SHOW) #EndRegion ### END Koda GUI section ### While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE Exit Case $sauvegarder_chap_sel $url_chap_sel = GUICtrlRead($cChap) If $url_chap_sel <> "" Then GUICtrlSetData($edit, "") Recup_Chap_Sel($url_chap_sel) EndIf EndSwitch WEnd ;~ $url = "https://www.fortuneeternal.com/novel/how-to-ruin-a-love-comedy-mtl/chapter-0/" ;~ $fichier = @DesktopDir & "\how to ruin a love melody.txt" ;~ $cs = BinaryToString(InetRead($url),1) ;~ MsgBox(0,"",$cs) Func ListingChap() For $a = 0 To 313 $url = "https://www.fortuneeternal.com/novel/how-to-ruin-a-love-comedy-mtl/chapter-" & $a & "/" GUICtrlSetData($cChap, $url) Next EndFunc ;==>ListingChap Func Recup_Chap_Sel($url) $ua = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36 Edg/118.0.2088.88" $contenu = "" $oHTTP = ObjCreate("winhttp.winhttprequest.5.1") $oHTTP.Open("GET", $url, False) ; Open a GET request to a web page $oHTTP.SetRequestHeader("User-Agent", $ua) $oHTTP.SetRequestHeader("Accept", "image/jpeg, application/x-ms-application, image/gif, image/png, application/xaml+xml, image/pjpeg, application/x-ms-xbap, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, application/x-shockwave-flash, */*") $oHTTP.Send() If $oHTTP.Status = 200 Then $cs = $oHTTP.ResponseText ; Get the response text of the web page ;~ MsgBox(0,"",$cs) ;~ ClipPut($cs) $cs = StringReplace($cs, "…", "…") $cs = StringReplace($cs, "–", "–") $cs = StringReplace($cs, "—", "—") $cs = StringReplace($cs, "‘", "‘") $cs = StringReplace($cs, "’", "’") $cs = StringReplace($cs, "“", "“") $cs = StringReplace($cs, "”", "”") $cs = StringReplace($cs, "•", "•") $cs = StringReplace($cs, "&", "&") $cs = StringReplace($cs, "<", "<") $cs = StringReplace($cs, ">", ">") $cs = StringReplace($cs, '<p>', @CRLF & '<p>') $cs = StringReplace($cs, '</p>', '</p>' & @CRLF & @CRLF) ;~ ClipPut($cs) ;~ MsgBox(0,"",$cs) For $a = 1 To StringSplit($cs, @LF)[0] $ligne = StringSplit($cs, @LF)[$a] $ligne = StringStripWS($ligne, 3) If StringLeft($ligne, 3) = "<p>" And StringRight($ligne, 4) = "</p>" Then ;~ MsgBox(0,"",$ligne) $ligne = StringReplace($ligne, "<p>", "") $ligne = StringReplace($ligne, "</p>", @CRLF) $contenu &= $ligne & @CRLF EndIf Next EndIf If $contenu <> "" Then $segments = StringSplit($url, "/") ; divise l'URL en segments séparés par "/" $chapitre = $segments[$segments[0] - 1] ;~ MsgBox(0, $chapitre, $contenu) GUICtrlSetData($edit, $contenu) EndIf EndFunc ;==>Recup_Chap_Sel
++
6 nov. 2023 à 11:06
Bonjour,
Avec Firefox, si je fait: "Enregistrer sous", le navigateur.affiche la page telle que sur le site, avec le dossier associé qui contient tout le reste (CSS, JS, icon,...ect...)
Where is the problem ?
6 nov. 2023 à 11:13
Salut.
Le problème ? 313 chapitres.
Si la personne compte le faire pour tous les chapitres, ça va être hardcore ^^
=)
6 nov. 2023 à 11:26
Alors: "Super Macro" avec des pauses, un clic et on laisse mouliner.
6 nov. 2023 à 11:39
Bonjour mariam-j ,
Les réponses ont déjà été données en septembre ... pourquoi déterrer ce sujet pour, en plus, n'apporter aucune réponse utile ?
6 nov. 2023 à 15:10
Lu'
Faut dire, à juste titre, que je suis le premier à l'avoir déterré. Sorry, my bad.
Vu que tu es modérateur, que penses tu de ceci ?
-> Je fournis le script que j'ai fait
-> On ferme le topic.
Comme ça :
- si une personne cherche à faire pareil, c'est-à-dire, récupérer du texte, elle pourra adapter le script
- et on polluera plus ce sujet ^^
++
7 nov. 2023 à 00:15
Pour ma part, tu as moins déterré vu que tu avais commencé à répondre dès le mois de septembre avec des informations utiles.
Contrairement à mariam-j qui n'a rien apporté de technique ni d'utile à la discussion
Je pense que le demandeur ( aux abonnés absents depuis qu'on a commencé à lui répondre .. ) sera content de trouver ton script si il n'a pas déjà réussi à le faire en se servant du lien que je lui ai donné.
Et oui, je vais marquer cette discussion en résolue.