πως αποθηκεύονται νήματα του phorum.com.gr?

Λογισμικό, λειτουργικά συστήματα, προγραμματισμός, hardware, δίκτυα, Internet
Άβαταρ μέλους
dna replication
Δημοσιεύσεις: 30652
Εγγραφή: 16 Απρ 2018, 21:29
Phorum.gr user: dna

πως αποθηκεύονται νήματα του phorum.com.gr?

Μη αναγνωσμένη δημοσίευση από dna replication » 20 Απρ 2023, 10:31

επειδη υπάρχει μια σχετική συζήτηση για κλείσιμο του phorum.com.gr και η διαχείριση Spiros252 είναι εξαφανισμένη
για να μη βρεθούμε προ απροόπτου όπως στο παρελθόν
ήθελα να ρωτήσω τρόπους για να αποθηκεύσω νήματα.
Π.χ θέλω να αποθηκεύσω το εργαστήριο του chiloutbuddy όπως είναι με δημοσιεύσεις και φωτογραφίες, ως ιστοσελίδα, με ποιόν τρόπο γίνεται αυτό?
θα έχει π.χ. το σύστημα αναζήτησης?
Наше дело правое - победа будет за нами!

Άβαταρ μέλους
dna replication
Δημοσιεύσεις: 30652
Εγγραφή: 16 Απρ 2018, 21:29
Phorum.gr user: dna

Re: πως αποθηκεύονται νήματα του phorum.com.gr?

Μη αναγνωσμένη δημοσίευση από dna replication » 20 Απρ 2023, 10:45

εδώ είχε γίνει μια απόπειρα για αποθήκευση δημοσιεύσεων ανά χρήστη, μάλλον ανολοκλήρωτη

viewtopic.php?f=63&t=46663#p2952310
Наше дело правое - победа будет за нами!

Άβαταρ μέλους
klg
Δημοσιεύσεις: 3284
Εγγραφή: 15 Οκτ 2018, 12:14
Phorum.gr user: klg

Re: πως αποθηκεύονται νήματα του phorum.com.gr?

Μη αναγνωσμένη δημοσίευση από klg » 20 Απρ 2023, 12:44

dna replication έγραψε:
20 Απρ 2023, 10:45
εδώ είχε γίνει μια απόπειρα για αποθήκευση δημοσιεύσεων ανά χρήστη, μάλλον ανολοκλήρωτη

viewtopic.php?f=63&t=46663#p2952310
Δεν χρειάζεται κάποιο custom script, υπάρχουν πολλοί scrapers που μπορούν να κατεβάσουν όλο το site.
Ενπηρειά και σθένος σου πήρε 6 σελίδες να κάνεις άρνηση απαιτούμενος. Είμαι νεαρή γυναίκα, είμαι νεαρή γυναίκα, είμαι νεαρή γυναίκα, είμαι νεαρή γυναίκα. Ακόμα και οι Ζαίοι δεν χρειάζονται τα δύο χρώματα σαν κυρίες.

Thank you Google Translate.

Άβαταρ μέλους
Stalker
Δημοσιεύσεις: 5657
Εγγραφή: 17 Μάιος 2018, 08:36
Phorum.gr user: CTAΛKEP

Re: πως αποθηκεύονται νήματα του phorum.com.gr?

Μη αναγνωσμένη δημοσίευση από Stalker » 20 Απρ 2023, 13:16

klg έγραψε:
20 Απρ 2023, 12:44
dna replication έγραψε:
20 Απρ 2023, 10:45
εδώ είχε γίνει μια απόπειρα για αποθήκευση δημοσιεύσεων ανά χρήστη, μάλλον ανολοκλήρωτη

viewtopic.php?f=63&t=46663#p2952310
Δεν χρειάζεται κάποιο custom script, υπάρχουν πολλοί scrapers που μπορούν να κατεβάσουν όλο το site.
Που αν τηρεί τα στοιχειώδη ο πάροχος θα πρέπει να μπλοκάρει, αλλιώς ο κάθε πχορουμοπικραμένος θα μπορούσε να το ταράξει στα denial of service.

Ακόμα ένα δείγμα του παθολογικού legacy της διοίκησης του προηγούμενου πχορουμ, ότι είναι υπολογίσιμος κίνδυνος να θέλει κόσμος να κάνει τακτικά scrape όλο το σάιτ.
If reality is the sum of our perceptions, to acquire more varying points of view is to acquire, literally, more reality

Άβαταρ μέλους
GoBzi
Δημοσιεύσεις: 5195
Εγγραφή: 10 Απρ 2022, 23:02

Re: πως αποθηκεύονται νήματα του phorum.com.gr?

Μη αναγνωσμένη δημοσίευση από GoBzi » 20 Απρ 2023, 13:36

Κώδικας: Επιλογή όλων

#!/bin/bash

start=0

while [ $start -le 2505 ]
do
  
  url="https://www.phorum.com.gr/viewtopic.php?f=43&t=1193&hilit=chiloutbuddy&start=$start"
  
  curl "$url" -o "page_$start.html"
  sleep 1
 
  sed -i 's/\.\//https:\/\/www.phorum.com.gr\//g' "page_$start.html"
  
  start=$((start+15))
done

Αυτή την στιγμή το script κατεβάζει το νήμα που ανέφερες αλλά παίρνει τα css αρχεία απο το phorum, εαν θελεις να τα έχεις και τα css τοπικα. Εαν το κάνεις αυτό το sed χρειάζεται.

Κώδικας: Επιλογή όλων

#!/bin/bash

mkdir -p assets/css styles/propho/theme/el ext/alfredoramos/simplespoiler/styles/all/theme/css/ ext/cabot/profilgauche/styles/all/theme/ ext/david63/disclaimer/styles/all/theme/ ext/david63/privacypolicy/styles/all/theme/ ext/ger/modbreak/styles/all/theme/ ext/phpbb/pages/styles/prosilver/theme ext/stevotvr/flair/styles/prosilver/theme ext/vse/lightbox/styles/all/template/lightbox/css/

css=(
  "https://www.phorum.com.gr/assets/css/font-awesome.min.css"
  "https://www.phorum.com.gr/styles/propho/theme/stylesheet.css"
  "https://www.phorum.com.gr/styles/propho/theme/el/stylesheet.css"
  "https://www.phorum.com.gr/ext/alfredoramos/simplespoiler/styles/all/theme/css/common.css"
  "https://www.phorum.com.gr/ext/alfredoramos/simplespoiler/styles/prosilver/theme/css/style.css"
  "https://www.phorum.com.gr/ext/alfredoramos/simplespoiler/styles/prosilver/theme/css/colors.css"
  "https://www.phorum.com.gr/ext/cabot/profilgauche/styles/all/theme/profilgauche.css"
  "https://www.phorum.com.gr/ext/david63/disclaimer/styles/all/theme/disclaimer.css"
  "https://www.phorum.com.gr/ext/david63/privacypolicy/styles/all/theme/cookie.css"
  "https://www.phorum.com.gr/ext/ger/modbreak/styles/all/theme/modbreak.css"
  "https://www.phorum.com.gr/ext/phpbb/pages/styles/prosilver/theme/pages_common.css"
  "https://www.phorum.com.gr/ext/stevotvr/flair/styles/prosilver/theme/flair.css"
  "https://www.phorum.com.gr/ext/vse/lightbox/styles/all/template/lightbox/css/lightbox.min.css"
)


for url in "${css[@]}"
do
  filename=$(basename "$url")
  directory=$(dirname "$url" | sed 's#https://www.phorum.com.gr/##')
  mkdir -p "$directory"
  curl "$url" -O -J
  mv "$filename" "$directory"
done

Επίσης χρειάζεται άλλο ενα sed για να αλλάξει τα link απο την κάθε σελίδα, αλλιώς θα πρέπει να τις ανοίγεις μια μια. Εχει σκαλώσει ο εγκέφαλος τωρα, θα το δω πιο μετά.


Το output είναι κάπως έτσι:

Εικόνα

Δεν κατέβασα όλο το νήμα, εσυ θα έχεις ενα html αρχείο για κάθε σελίδα του νήματος (μέχρι την 168 βασικά).

Πως φαίνεται:
Εικόνα
Τελευταία επεξεργασία από το μέλος GoBzi την 20 Απρ 2023, 13:44, έχει επεξεργασθεί 2 φορές συνολικά.
Ψευτοανρθωπιστές όλων των χωρών, ενωθείτε! https://www.youtube.com/shorts/tyOHY83IBoc
PHORUM Discord: https://discord.com/invite/dRqr9EMs

Άβαταρ μέλους
Υδράργυρος
Δημοσιεύσεις: 25529
Εγγραφή: 30 Μαρ 2018, 17:47

Re: πως αποθηκεύονται νήματα του phorum.com.gr?

Μη αναγνωσμένη δημοσίευση από Υδράργυρος » 20 Απρ 2023, 13:39

Μπά; Εξαφανισμένος ο Spiros252?

Άβαταρ μέλους
klg
Δημοσιεύσεις: 3284
Εγγραφή: 15 Οκτ 2018, 12:14
Phorum.gr user: klg

Re: πως αποθηκεύονται νήματα του phorum.com.gr?

Μη αναγνωσμένη δημοσίευση από klg » 20 Απρ 2023, 13:45

Stalker έγραψε:
20 Απρ 2023, 13:16
klg έγραψε:
20 Απρ 2023, 12:44
dna replication έγραψε:
20 Απρ 2023, 10:45
εδώ είχε γίνει μια απόπειρα για αποθήκευση δημοσιεύσεων ανά χρήστη, μάλλον ανολοκλήρωτη

viewtopic.php?f=63&t=46663#p2952310
Δεν χρειάζεται κάποιο custom script, υπάρχουν πολλοί scrapers που μπορούν να κατεβάσουν όλο το site.
Που αν τηρεί τα στοιχειώδη ο πάροχος θα πρέπει να μπλοκάρει, αλλιώς ο κάθε πχορουμοπικραμένος θα μπορούσε να το ταράξει στα denial of service.

Ακόμα ένα δείγμα του παθολογικού legacy της διοίκησης του προηγούμενου πχορουμ, ότι είναι υπολογίσιμος κίνδυνος να θέλει κόσμος να κάνει τακτικά scrape όλο το σάιτ.
Μπορείς να κάνεις scrape το site χωρίς να κάνεις να το μπρικιάσεις, just saying. Από την άλλη θα μου πεις άμα το κάνουν αυτό 100 άτομα ταυτόχρονα δεν θα πάει καλά.

Γενικά δεν ξέρω γιατί δεν μπορούμε να σηκωσουμε ένα readonly mirror του site να υπάρχει.
Ενπηρειά και σθένος σου πήρε 6 σελίδες να κάνεις άρνηση απαιτούμενος. Είμαι νεαρή γυναίκα, είμαι νεαρή γυναίκα, είμαι νεαρή γυναίκα, είμαι νεαρή γυναίκα. Ακόμα και οι Ζαίοι δεν χρειάζονται τα δύο χρώματα σαν κυρίες.

Thank you Google Translate.

Άβαταρ μέλους
GoBzi
Δημοσιεύσεις: 5195
Εγγραφή: 10 Απρ 2022, 23:02

Re: πως αποθηκεύονται νήματα του phorum.com.gr?

Μη αναγνωσμένη δημοσίευση από GoBzi » 20 Απρ 2023, 16:44

@dna replication oλο το script σε bash. Κατεβάζει μόνο το συγκεριμένο νήμα που ζήτησες αλλά μπορείς να το προσαρμώσεις για οτι νήμα θέλεις.

Κώδικας: Επιλογή όλων

#!/bin/bash

mkdir -p assets/css styles/propho/theme/el ext/alfredoramos/simplespoiler/styles/all/theme/css/ ext/cabot/profilgauche/styles/all/theme/ ext/david63/disclaimer/styles/all/theme/ ext/david63/privacypolicy/styles/all/theme/ ext/ger/modbreak/styles/all/theme/ ext/phpbb/pages/styles/prosilver/theme ext/stevotvr/flair/styles/prosilver/theme ext/vse/lightbox/styles/all/template/lightbox/css/

css=(
  "https://www.phorum.com.gr/assets/css/font-awesome.min.css"
  "https://www.phorum.com.gr/styles/propho/theme/stylesheet.css"
  "https://www.phorum.com.gr/styles/propho/theme/el/stylesheet.css"
  "https://www.phorum.com.gr/ext/alfredoramos/simplespoiler/styles/all/theme/css/common.css"
  "https://www.phorum.com.gr/ext/alfredoramos/simplespoiler/styles/prosilver/theme/css/style.css"
  "https://www.phorum.com.gr/ext/alfredoramos/simplespoiler/styles/prosilver/theme/css/colors.css"
  "https://www.phorum.com.gr/ext/cabot/profilgauche/styles/all/theme/profilgauche.css"
  "https://www.phorum.com.gr/ext/david63/disclaimer/styles/all/theme/disclaimer.css"
  "https://www.phorum.com.gr/ext/david63/privacypolicy/styles/all/theme/cookie.css"
  "https://www.phorum.com.gr/ext/ger/modbreak/styles/all/theme/modbreak.css"
  "https://www.phorum.com.gr/ext/phpbb/pages/styles/prosilver/theme/pages_common.css"
  "https://www.phorum.com.gr/ext/stevotvr/flair/styles/prosilver/theme/flair.css"
  "https://www.phorum.com.gr/ext/vse/lightbox/styles/all/template/lightbox/css/lightbox.min.css"
)

includes=(
    "https://www.phorum.com.gr/styles/propho/theme/normalize.css"
    "https://www.phorum.com.gr/styles/propho/theme/base.css"
    "https://www.phorum.com.gr/styles/propho/theme/utilities.css"
    "https://www.phorum.com.gr/styles/propho/theme/common.css"
    "https://www.phorum.com.gr/styles/propho/theme/links.css"
    "https://www.phorum.com.gr/styles/propho/theme/content.css"
    "https://www.phorum.com.gr/styles/propho/theme/buttons.css"
    "https://www.phorum.com.gr/styles/propho/theme/cp.css"
    "https://www.phorum.com.gr/styles/propho/theme/forms.css"
    "https://www.phorum.com.gr/styles/propho/theme/icons.css"
    "https://www.phorum.com.gr/styles/propho/theme/colours.css"
    "https://www.phorum.com.gr/styles/propho/theme/responsive.css"
)

for url in "${css[@]}"
do
  filename=$(basename "$url")
  directory=$(dirname "$url" | sed 's#https://www.phorum.com.gr/##')
  mkdir -p "$directory"
  curl "$url" -O -J
  mv "$filename" "$directory"
done
  
for url in "${includes[@]}"
do
  filename=$(basename "$url")
  curl "$url" -O -J
  mv "$filename" styles/propho/theme

done

blah=0

while [ $blah -le 2505 ]
do
  
  url="https://www.phorum.com.gr/viewtopic.php?f=43&t=1193&hilit=chiloutbuddy&start=$blah" # Εαν θέλεις άλλο νήμα, πρέπει να αλλάξεις τo URL εδώ. Κάθε νήμα ξεκινάει απο το start=0, οπότε εαν θέλεις και άλλα νήματα θα πρέπει να πας στην τελευταία τους σελιδά και να δεις στο URL την τιμή του start. Πχ η τελαυταία σελίδα στο https://www.phorum.com.gr/viewtopic.php?f=36&t=126&start=1590 είναι η 1590. Η τιμή στο while (while [ $blah -le 2505 ]) θα πρέπει να οριστεί ως αυτή της τελευταίας σελίδας του νήματος, δηλαδη στο παράδειγμα θα είχαμε while [ $blah -le 1590]. Εαν προστεθούν και άλλες σελίδες, δεν χρειάζεται να κατεβάσεις τα πάντα απο την αρχή, απλα άλλαξε το blah=0 σε blah=Χ όπου Χ = η τελαυταία σελίδα που είχες κατεβάσει οταν έτρεξες για πρώτη φορα το script στο συγκεκριμενο νήμα.
  
  curl "$url" -o "page_$blah.html"
  sleep 1
  
  #sed -i 's/\.\//https:\/\/www.phorum.com.gr\//g' "page_$blah.html"
  sed -i 's|./viewtopic\.php?f=43&t=1193&hilit=chiloutbuddy&sid=\([a-z 0-9]\+\)&start=\([0-9]\+\)|page_\2.html|g' "page_$blah.html"


  
  blah=$((blah+15))
done
Ψευτοανρθωπιστές όλων των χωρών, ενωθείτε! https://www.youtube.com/shorts/tyOHY83IBoc
PHORUM Discord: https://discord.com/invite/dRqr9EMs

Άβαταρ μέλους
Allah
Δημοσιεύσεις: 799
Εγγραφή: 08 Ιαν 2023, 14:40
Phorum.gr user: Άγιος Παπάριος, Άγιος, Έσχατόγερος
Τοποθεσία: Mecca
Επικοινωνία:

Re: πως αποθηκεύονται νήματα του phorum.com.gr?

Μη αναγνωσμένη δημοσίευση από Allah » 21 Απρ 2023, 00:20

klg έγραψε:
20 Απρ 2023, 13:45
Μπορείς να κάνεις scrape το site χωρίς να κάνεις να το μπρικιάσεις, just saying. Από την άλλη θα μου πεις άμα το κάνουν αυτό 100 άτομα ταυτόχρονα δεν θα πάει καλά.
Τελικά αντί να το σώσετε το μαγαζί εσείς, θα κάνετε κατά λάθος ddos παίζοντας με τα σκριπτάκια και θα το γονατίσετε...
nik_killthemall έγραψε:
23 Νοέμ 2023, 21:03
Είμαστε μαζί με το Ισραηλ μπραβο στην γενοκτονία - εθνοκαθαρση που ετοιμάζει !
! ٱللَّٰهُ أَكْبَرُ

Άβαταρ μέλους
klg
Δημοσιεύσεις: 3284
Εγγραφή: 15 Οκτ 2018, 12:14
Phorum.gr user: klg

Re: πως αποθηκεύονται νήματα του phorum.com.gr?

Μη αναγνωσμένη δημοσίευση από klg » 21 Απρ 2023, 08:23

Allah έγραψε:
21 Απρ 2023, 00:20
klg έγραψε:
20 Απρ 2023, 13:45
Μπορείς να κάνεις scrape το site χωρίς να κάνεις να το μπρικιάσεις, just saying. Από την άλλη θα μου πεις άμα το κάνουν αυτό 100 άτομα ταυτόχρονα δεν θα πάει καλά.
Τελικά αντί να το σώσετε το μαγαζί εσείς, θα κάνετε κατά λάθος ddos παίζοντας με τα σκριπτάκια και θα το γονατίσετε...
Nah, μια χαρά θα είναι το μαγαζί.
Ενπηρειά και σθένος σου πήρε 6 σελίδες να κάνεις άρνηση απαιτούμενος. Είμαι νεαρή γυναίκα, είμαι νεαρή γυναίκα, είμαι νεαρή γυναίκα, είμαι νεαρή γυναίκα. Ακόμα και οι Ζαίοι δεν χρειάζονται τα δύο χρώματα σαν κυρίες.

Thank you Google Translate.

Άβαταρ μέλους
Dante Alighieri
Δημοσιεύσεις: 848
Εγγραφή: 24 Απρ 2019, 00:13

Re: πως αποθηκεύονται νήματα του phorum.com.gr?

Μη αναγνωσμένη δημοσίευση από Dante Alighieri » 23 Απρ 2023, 16:32

GoBzi έγραψε:
20 Απρ 2023, 16:44
@dna replication oλο το script σε bash. Κατεβάζει μόνο το συγκεριμένο νήμα που ζήτησες αλλά μπορείς να το προσαρμώσεις για οτι νήμα θέλεις.

Κώδικας: Επιλογή όλων

#!/bin/bash

mkdir -p assets/css styles/propho/theme/el ext/alfredoramos/simplespoiler/styles/all/theme/css/ ext/cabot/profilgauche/styles/all/theme/ ext/david63/disclaimer/styles/all/theme/ ext/david63/privacypolicy/styles/all/theme/ ext/ger/modbreak/styles/all/theme/ ext/phpbb/pages/styles/prosilver/theme ext/stevotvr/flair/styles/prosilver/theme ext/vse/lightbox/styles/all/template/lightbox/css/

css=(
  "https://www.phorum.com.gr/assets/css/font-awesome.min.css"
  "https://www.phorum.com.gr/styles/propho/theme/stylesheet.css"
  "https://www.phorum.com.gr/styles/propho/theme/el/stylesheet.css"
  "https://www.phorum.com.gr/ext/alfredoramos/simplespoiler/styles/all/theme/css/common.css"
  "https://www.phorum.com.gr/ext/alfredoramos/simplespoiler/styles/prosilver/theme/css/style.css"
  "https://www.phorum.com.gr/ext/alfredoramos/simplespoiler/styles/prosilver/theme/css/colors.css"
  "https://www.phorum.com.gr/ext/cabot/profilgauche/styles/all/theme/profilgauche.css"
  "https://www.phorum.com.gr/ext/david63/disclaimer/styles/all/theme/disclaimer.css"
  "https://www.phorum.com.gr/ext/david63/privacypolicy/styles/all/theme/cookie.css"
  "https://www.phorum.com.gr/ext/ger/modbreak/styles/all/theme/modbreak.css"
  "https://www.phorum.com.gr/ext/phpbb/pages/styles/prosilver/theme/pages_common.css"
  "https://www.phorum.com.gr/ext/stevotvr/flair/styles/prosilver/theme/flair.css"
  "https://www.phorum.com.gr/ext/vse/lightbox/styles/all/template/lightbox/css/lightbox.min.css"
)

includes=(
    "https://www.phorum.com.gr/styles/propho/theme/normalize.css"
    "https://www.phorum.com.gr/styles/propho/theme/base.css"
    "https://www.phorum.com.gr/styles/propho/theme/utilities.css"
    "https://www.phorum.com.gr/styles/propho/theme/common.css"
    "https://www.phorum.com.gr/styles/propho/theme/links.css"
    "https://www.phorum.com.gr/styles/propho/theme/content.css"
    "https://www.phorum.com.gr/styles/propho/theme/buttons.css"
    "https://www.phorum.com.gr/styles/propho/theme/cp.css"
    "https://www.phorum.com.gr/styles/propho/theme/forms.css"
    "https://www.phorum.com.gr/styles/propho/theme/icons.css"
    "https://www.phorum.com.gr/styles/propho/theme/colours.css"
    "https://www.phorum.com.gr/styles/propho/theme/responsive.css"
)

for url in "${css[@]}"
do
  filename=$(basename "$url")
  directory=$(dirname "$url" | sed 's#https://www.phorum.com.gr/##')
  mkdir -p "$directory"
  curl "$url" -O -J
  mv "$filename" "$directory"
done
  
for url in "${includes[@]}"
do
  filename=$(basename "$url")
  curl "$url" -O -J
  mv "$filename" styles/propho/theme

done

blah=0

while [ $blah -le 2505 ]
do
  
  url="https://www.phorum.com.gr/viewtopic.php?f=43&t=1193&hilit=chiloutbuddy&start=$blah" # Εαν θέλεις άλλο νήμα, πρέπει να αλλάξεις τo URL εδώ. Κάθε νήμα ξεκινάει απο το start=0, οπότε εαν θέλεις και άλλα νήματα θα πρέπει να πας στην τελευταία τους σελιδά και να δεις στο URL την τιμή του start. Πχ η τελαυταία σελίδα στο https://www.phorum.com.gr/viewtopic.php?f=36&t=126&start=1590 είναι η 1590. Η τιμή στο while (while [ $blah -le 2505 ]) θα πρέπει να οριστεί ως αυτή της τελευταίας σελίδας του νήματος, δηλαδη στο παράδειγμα θα είχαμε while [ $blah -le 1590]. Εαν προστεθούν και άλλες σελίδες, δεν χρειάζεται να κατεβάσεις τα πάντα απο την αρχή, απλα άλλαξε το blah=0 σε blah=Χ όπου Χ = η τελαυταία σελίδα που είχες κατεβάσει οταν έτρεξες για πρώτη φορα το script στο συγκεκριμενο νήμα.
  
  curl "$url" -o "page_$blah.html"
  sleep 1
  
  #sed -i 's/\.\//https:\/\/www.phorum.com.gr\//g' "page_$blah.html"
  sed -i 's|./viewtopic\.php?f=43&t=1193&hilit=chiloutbuddy&sid=\([a-z 0-9]\+\)&start=\([0-9]\+\)|page_\2.html|g' "page_$blah.html"


  
  blah=$((blah+15))
done
Πως κατεβάζεις όλες σου τις δημοσιεύσεις;
Hec est vipera versa in viscera genitricis

Άβαταρ μέλους
Dante Alighieri
Δημοσιεύσεις: 848
Εγγραφή: 24 Απρ 2019, 00:13

Re: πως αποθηκεύονται νήματα του phorum.com.gr?

Μη αναγνωσμένη δημοσίευση από Dante Alighieri » 23 Απρ 2023, 16:38

GoBzi έγραψε:
20 Απρ 2023, 13:36
Το παραπάνω script είναι ένα bash script που περιλαμβάνει μια εντολή while loop και χρησιμοποιεί τρία εργαλεία του Linux: το curl, το sleep και το sed.

Αρχικά, ορίζεται μια μεταβλητή με όνομα start που έχει αρχική τιμή 0. Στη συνέχεια, το while loop εκτελείται όσο η τιμή της start είναι μικρότερη ή ίση με 2505.

Κάθε φορά που εκτελείται το while loop, δημιουργείται μια μεταβλητή url, η οποία περιλαμβάνει μια διεύθυνση URL που χρησιμοποιείται για να κατεβάσει μια ιστοσελίδα από το διαδίκτυο χρησιμοποιώντας την εντολή curl. Η διεύθυνση URL αλλάζει κάθε φορά που το while loop εκτελείται, προσθέτοντας την τιμή της μεταβλητής start στο τέλος της διεύθυνσης URL.

Έπειτα, το script κατεβάζει την ιστοσελίδα με όνομα "page_$start.html" και αυξάνει την τιμή της μεταβλητής start κατά 15. Η εντολή sleep προσθέτει μια καθυστέρηση ενός δευτερολέπτου μεταξύ των αιτημάτων κατέβασματος ιστοσελίδων, προκειμένου να αποφευχθεί η υπερβολική φόρτωση του διακομιστή.

Τέλος, η εντολή sed αντικαθιστ

Εδώ κόλλησε και του είπα να συνεχίσει :D


εί την συμβολοσειρά ./ σε όλο το περιεχόμενο του αρχείου "page_$start.html" με τη συμβολοσειρά https://www.phorum.com.gr/. Αυτό επιτρέπει στο script να αντικαταστήσει στα στοιχεία της ιστοσελίδας που κατεβάζει τα σχετικά URL με απόλυτες διευθύνσεις URL.

Συνολικά, το script αυτό μπορεί να χρησιμοποιηθεί για να κατεβάσει μια σειρά από ιστοσελίδες από ένα συγκεκριμένο θέμα σε ένα φόρουμ και να αλλάξει τις σχετικές διευθύνσεις URL σε απόλυτες διευθύνσεις URL για ευκολότερη πλοήγηση και χρήση των ιστοσελίδων.

:lol:
Hec est vipera versa in viscera genitricis

Άβαταρ μέλους
GoBzi
Δημοσιεύσεις: 5195
Εγγραφή: 10 Απρ 2022, 23:02

Re: πως αποθηκεύονται νήματα του phorum.com.gr?

Μη αναγνωσμένη δημοσίευση από GoBzi » 23 Απρ 2023, 16:46

Dante Alighieri έγραψε:
23 Απρ 2023, 16:32
GoBzi έγραψε:
20 Απρ 2023, 16:44
@dna replication oλο το script σε bash. Κατεβάζει μόνο το συγκεριμένο νήμα που ζήτησες αλλά μπορείς να το προσαρμώσεις για οτι νήμα θέλεις.

Κώδικας: Επιλογή όλων

#!/bin/bash

mkdir -p assets/css styles/propho/theme/el ext/alfredoramos/simplespoiler/styles/all/theme/css/ ext/cabot/profilgauche/styles/all/theme/ ext/david63/disclaimer/styles/all/theme/ ext/david63/privacypolicy/styles/all/theme/ ext/ger/modbreak/styles/all/theme/ ext/phpbb/pages/styles/prosilver/theme ext/stevotvr/flair/styles/prosilver/theme ext/vse/lightbox/styles/all/template/lightbox/css/

css=(
  "https://www.phorum.com.gr/assets/css/font-awesome.min.css"
  "https://www.phorum.com.gr/styles/propho/theme/stylesheet.css"
  "https://www.phorum.com.gr/styles/propho/theme/el/stylesheet.css"
  "https://www.phorum.com.gr/ext/alfredoramos/simplespoiler/styles/all/theme/css/common.css"
  "https://www.phorum.com.gr/ext/alfredoramos/simplespoiler/styles/prosilver/theme/css/style.css"
  "https://www.phorum.com.gr/ext/alfredoramos/simplespoiler/styles/prosilver/theme/css/colors.css"
  "https://www.phorum.com.gr/ext/cabot/profilgauche/styles/all/theme/profilgauche.css"
  "https://www.phorum.com.gr/ext/david63/disclaimer/styles/all/theme/disclaimer.css"
  "https://www.phorum.com.gr/ext/david63/privacypolicy/styles/all/theme/cookie.css"
  "https://www.phorum.com.gr/ext/ger/modbreak/styles/all/theme/modbreak.css"
  "https://www.phorum.com.gr/ext/phpbb/pages/styles/prosilver/theme/pages_common.css"
  "https://www.phorum.com.gr/ext/stevotvr/flair/styles/prosilver/theme/flair.css"
  "https://www.phorum.com.gr/ext/vse/lightbox/styles/all/template/lightbox/css/lightbox.min.css"
)

includes=(
    "https://www.phorum.com.gr/styles/propho/theme/normalize.css"
    "https://www.phorum.com.gr/styles/propho/theme/base.css"
    "https://www.phorum.com.gr/styles/propho/theme/utilities.css"
    "https://www.phorum.com.gr/styles/propho/theme/common.css"
    "https://www.phorum.com.gr/styles/propho/theme/links.css"
    "https://www.phorum.com.gr/styles/propho/theme/content.css"
    "https://www.phorum.com.gr/styles/propho/theme/buttons.css"
    "https://www.phorum.com.gr/styles/propho/theme/cp.css"
    "https://www.phorum.com.gr/styles/propho/theme/forms.css"
    "https://www.phorum.com.gr/styles/propho/theme/icons.css"
    "https://www.phorum.com.gr/styles/propho/theme/colours.css"
    "https://www.phorum.com.gr/styles/propho/theme/responsive.css"
)

for url in "${css[@]}"
do
  filename=$(basename "$url")
  directory=$(dirname "$url" | sed 's#https://www.phorum.com.gr/##')
  mkdir -p "$directory"
  curl "$url" -O -J
  mv "$filename" "$directory"
done
  
for url in "${includes[@]}"
do
  filename=$(basename "$url")
  curl "$url" -O -J
  mv "$filename" styles/propho/theme

done

blah=0

while [ $blah -le 2505 ]
do
  
  url="https://www.phorum.com.gr/viewtopic.php?f=43&t=1193&hilit=chiloutbuddy&start=$blah" # Εαν θέλεις άλλο νήμα, πρέπει να αλλάξεις τo URL εδώ. Κάθε νήμα ξεκινάει απο το start=0, οπότε εαν θέλεις και άλλα νήματα θα πρέπει να πας στην τελευταία τους σελιδά και να δεις στο URL την τιμή του start. Πχ η τελαυταία σελίδα στο https://www.phorum.com.gr/viewtopic.php?f=36&t=126&start=1590 είναι η 1590. Η τιμή στο while (while [ $blah -le 2505 ]) θα πρέπει να οριστεί ως αυτή της τελευταίας σελίδας του νήματος, δηλαδη στο παράδειγμα θα είχαμε while [ $blah -le 1590]. Εαν προστεθούν και άλλες σελίδες, δεν χρειάζεται να κατεβάσεις τα πάντα απο την αρχή, απλα άλλαξε το blah=0 σε blah=Χ όπου Χ = η τελαυταία σελίδα που είχες κατεβάσει οταν έτρεξες για πρώτη φορα το script στο συγκεκριμενο νήμα.
  
  curl "$url" -o "page_$blah.html"
  sleep 1
  
  #sed -i 's/\.\//https:\/\/www.phorum.com.gr\//g' "page_$blah.html"
  sed -i 's|./viewtopic\.php?f=43&t=1193&hilit=chiloutbuddy&sid=\([a-z 0-9]\+\)&start=\([0-9]\+\)|page_\2.html|g' "page_$blah.html"


  
  blah=$((blah+15))
done
Πως κατεβάζεις όλες σου τις δημοσιεύσεις;
Δεν είχα ασχοληθεί πολύ με το συγκεκριμένο, αλλά αν θυμάμαι καλά η κάθε σου δημοσίευση έχει ένα μοναδικό κωδικό, αλλά ο ίδιος κωδικός χρησιμοποιείται όταν κάποιος σου κάνει quote, οπότε δεν μπορούσα να ξεχωρίσω ποια είναι η αρχική δημοσίευση και ποιο το quote.

Δεν έχω πολύ δουλειά αύριο, θα το ξαναδώ.
Ψευτοανρθωπιστές όλων των χωρών, ενωθείτε! https://www.youtube.com/shorts/tyOHY83IBoc
PHORUM Discord: https://discord.com/invite/dRqr9EMs

Άβαταρ μέλους
GoBzi
Δημοσιεύσεις: 5195
Εγγραφή: 10 Απρ 2022, 23:02

Re: πως αποθηκεύονται νήματα του phorum.com.gr?

Μη αναγνωσμένη δημοσίευση από GoBzi » 23 Απρ 2023, 16:48

Dante Alighieri έγραψε:
23 Απρ 2023, 16:38
GoBzi έγραψε:
20 Απρ 2023, 13:36
Το παραπάνω script είναι ένα bash script που περιλαμβάνει μια εντολή while loop και χρησιμοποιεί τρία εργαλεία του Linux: το curl, το sleep και το sed.

Αρχικά, ορίζεται μια μεταβλητή με όνομα start που έχει αρχική τιμή 0. Στη συνέχεια, το while loop εκτελείται όσο η τιμή της start είναι μικρότερη ή ίση με 2505.

Κάθε φορά που εκτελείται το while loop, δημιουργείται μια μεταβλητή url, η οποία περιλαμβάνει μια διεύθυνση URL που χρησιμοποιείται για να κατεβάσει μια ιστοσελίδα από το διαδίκτυο χρησιμοποιώντας την εντολή curl. Η διεύθυνση URL αλλάζει κάθε φορά που το while loop εκτελείται, προσθέτοντας την τιμή της μεταβλητής start στο τέλος της διεύθυνσης URL.

Έπειτα, το script κατεβάζει την ιστοσελίδα με όνομα "page_$start.html" και αυξάνει την τιμή της μεταβλητής start κατά 15. Η εντολή sleep προσθέτει μια καθυστέρηση ενός δευτερολέπτου μεταξύ των αιτημάτων κατέβασματος ιστοσελίδων, προκειμένου να αποφευχθεί η υπερβολική φόρτωση του διακομιστή.

Τέλος, η εντολή sed αντικαθιστ

Εδώ κόλλησε και του είπα να συνεχίσει :D


εί την συμβολοσειρά ./ σε όλο το περιεχόμενο του αρχείου "page_$start.html" με τη συμβολοσειρά https://www.phorum.com.gr/. Αυτό επιτρέπει στο script να αντικαταστήσει στα στοιχεία της ιστοσελίδας που κατεβάζει τα σχετικά URL με απόλυτες διευθύνσεις URL.

Συνολικά, το script αυτό μπορεί να χρησιμοποιηθεί για να κατεβάσει μια σειρά από ιστοσελίδες από ένα συγκεκριμένο θέμα σε ένα φόρουμ και να αλλάξει τις σχετικές διευθύνσεις URL σε απόλυτες διευθύνσεις URL για ευκολότερη πλοήγηση και χρήση των ιστοσελίδων.

:lol:
Chat gpt είναι αυτό; Εάν δεν έχεις πρόσβαση σε Linux ζητά του να στο μετατρέψει σε powershell και μετά ρώτα πως να το τρέξεις. Λογικά μπορεί να το μετατρέψει.

Επίσης, αυτό είναι το πρώτο πρώτο script. Καλύτερα να δοκιμάσεις το 2ο, στο σχόλιο μου λίγο πιο κάτω από αυτό.
Ψευτοανρθωπιστές όλων των χωρών, ενωθείτε! https://www.youtube.com/shorts/tyOHY83IBoc
PHORUM Discord: https://discord.com/invite/dRqr9EMs

Απάντηση


  • Παραπλήσια Θέματα
    Απαντήσεις
    Προβολές
    Τελευταία δημοσίευση

Επιστροφή στο “Πληροφορική”

Phorum.com.gr : Αποποίηση Ευθυνών