drpaneas Δημοσ. 5 Ιανουαρίου 2014 Δημοσ. 5 Ιανουαρίου 2014 Παιδιά, καλημέρα, Έγραψα ένα σκριπτάκι σε Python 2.7 όπου γράφετε μία ερώτηση (φράση) ή ο,τιδήποτε θα γράφετε στο Google και αυτό σας επιστρέφει την πιο σωστή απάντηση. Έτσι αντί να ανοίξετε τον browser, να ψάξετε στο Google, να δείτε τα αποτελέσματα, να διαβασετε το αρθρο που θα βρειτε κλπ, απλά έχετε την απάντηση που ψάχνετε. Πως το κάνει αυτό; Αρχικά ψάχνει στο Google με search query στο AskUbuntu.com, μετά πάει στο πρώτο link, πηγαίνει στο Votes tab έτσι ώστε να έχει τις απαντήσεις με τις ψήφους πάνω-πάνω και σας την εμφανίζει. Ρίξτε μια ματια στο βιντεακι που το περιγράφω, νομίζω θα σας φανεί αρκετά χρήσιμο για μία γρήγορη λύση του ποδαριου όταν ξεχάσετε καποια εντολή ή κατι τετοιο. http://www.youtube.com/watch?v=zRMcT1uwjis 3
jim_p Δημοσ. 5 Ιανουαρίου 2014 Δημοσ. 5 Ιανουαρίου 2014 Απο οτι ειδα στο βιντεο, καλο μεν, αλλα... - Αντι να βαζει το ιδιο το σκριπτακι τις εξαρτησεις που θελει για να παιξει, να αναφερεται καπου οτι "θελει αυτο, αυτο και αυτο το προσθετο για την python" ή ακομα καλυτερα το πραγματικο ονομα του πακετου. - Οπως ειναι φτιαγμενο, τρεχοντας χωρις παραμετρους, ειναι σαν ενα online "σκονακι", πεταει δηλαδη την εντολη που πρεπει να δωσει ο χρηστης στο τερματικο, χωρις καποια εξηγηση. Με τις παραμετρους που το κανουν να δειχνει ολο το αρθρο στο askubuntu.com φαινεται πιο ωραιο, αρα πιστευω αυτη θα επρεπε να ειναι η default συμπεριφορα. Ακομα καλυτερα αν δινει το url για να το πατησεις να ανοιξει στον browser, σε οποιαδηποτε απο τις παραπανω περιπτωσεις. - Και ενα τελευταιο, για το οποιο δεν φταις εσυ. Οι απαντησεις δεν ειναι παντα σωστες. Πχ για την nvidia λεει να βαλεις ενα τριτο ppa repo και να τους κανεις εγκατασταση απο εκει, για τον chrome κατεβαζει το 64αρι πακετο, το youtube-dl το κατεβαζει σαν σκετο εκτελεσιμο αντι να το βαζει απο το repo. Αυτα 2
pmav99 Δημοσ. 5 Ιανουαρίου 2014 Δημοσ. 5 Ιανουαρίου 2014 Με μια γρήγορη ματιά στον κώδικα, 1. Το να χρειάζεται να τρέχεις με sudo ένα απλό script που κάνει ένα απλό GET είναι κάπως... 2. Το να εγκαθιστά δε και πακέτα χωρίς να σε ρωτάει είναι κάπως^2... Νομίζω ότι είναι πιο απλό να πετάς απλά ένα μήνυμα Missing dependencies. Please install them with "sudo apt-get install ..." 3. Αν το αφήσεις όπως είναι, τότε το time.sleep(3) δεν χρειάζεται, τζάμπα καθυστερείς το execution. Επίσης μπορείς να μαζεύεις σε μια λίστα όλα τα missing dependencies, ούτως ώστε να προσθέτεις τα ppa και να τρέχεις το "sudo apt-get update" μία φορά μόνο. 4. Καλύτερα αντικατέστησε τα os.system() με subprocess.call_check ή ό,τι νομίζεις καλύτερο. Ειναι λίγο πιο verbose, αλλά θα μπορείς να κάνεις catch ένα exception αν πάει κάτι στραβά όταν τρέχει το apt-get. 2
mandos Δημοσ. 5 Ιανουαρίου 2014 Δημοσ. 5 Ιανουαρίου 2014 έξυπνο, είναι κάτι που θα μπορούσε να μπει σε διάφορες διανομές πείραγμα: στην ερώτηση "is canonical evil?" τι απαντάει? 1
mad-proffessor Δημοσ. 5 Ιανουαρίου 2014 Δημοσ. 5 Ιανουαρίου 2014 Πολυ καλή ιδέα όντως. Αν έχεις όρεξη να τη συνεχίσεις θα σου πρότεινα να τη κάνεις "παραθυρική" εφαρμογή με embed κονσόλα κάτω-κάτω αλα netbeans π.χ. Ubuntu είναι η πρώτη διανομή που διάλεγει συνηθως κάποιος απο windows και είναι δύσκολο να πάει κατευθείαν σε κονσόλα και να εκτελέσει το script με "./". Εντάξει το main frame της εφαρμογής σου δε θα είναι τόσο complex και τέλειο οσο του netbeans, κάτι πιο απλό. Κώδικα βαρέθηκα να κατεβάσω τώρα ίσως κάποια άλλη μέρα, πάντως συμφωνώ με το feedback των αποπάνω και ιδίως με τα 1,4 του pmav99 και το 1 απο jim_p. #Άλλη προτάση που έχω να σου κάνω είναι π.χ Ερώτηση: How do we execute a script from the command line Απάντηση we navigate to the directory where the script is located, we make it executable by running the command chmod u+x /path/to/file and then we execute it like this ./file Ένα μικρό μανουαλ δηλ. εισαγωγής στη κονσόλα και βασικές εργασίες με αυτη. 1
pmav99 Δημοσ. 5 Ιανουαρίου 2014 Δημοσ. 5 Ιανουαρίου 2014 Νομίζω ότι ο mad-professor έχει δίκιο για το GUI. Ούτε δύσκολο πολύ θα είναι να το κάνεις, ούτε χρειάζεται να είναι κάτι περίπλοκο. Ένα menu για τα clear cache κτλ, ένα textbox για να γράφεις τις ερωτήσεις, ένα spinbox για το πόσες απαντήσεις να επιστρέφει κτλ Μπορείς να το κάνεις με Tk, αν και εγώ παίζει να το έκανα με PyQt. Μετά θα φτιάξεις και ένα πακέτο deb, θα στήσεις και ένα ppa και θα είσαι άρχοντας Και η ιδέα για το έτοιμο από πριν FAQ δεν είναι κακή. 1
drpaneas Δημοσ. 5 Ιανουαρίου 2014 Μέλος Δημοσ. 5 Ιανουαρίου 2014 Νομίζω ότι ο mad-professor έχει δίκιο για το GUI. Ούτε δύσκολο πολύ θα είναι να το κάνεις, ούτε χρειάζεται να είναι κάτι περίπλοκο. Ένα menu για τα clear cache κτλ, ένα textbox για να γράφεις τις ερωτήσεις, ένα spinbox για το πόσες απαντήσεις να επιστρέφει κτλ Μπορείς να το κάνεις με Tk, αν και εγώ παίζει να το έκανα με PyQt. Μετά θα φτιάξεις και ένα πακέτο deb, θα στήσεις και ένα ppa και θα είσαι άρχοντας Και η ιδέα για το έτοιμο από πριν FAQ δεν είναι κακή. Και εγω για PyQT σκεφτομαι, αλλα για την ωρα θα βελτιώσω το script σύμφωνα με τις πολύ καλές παρατηρήσεις των παιδιών από πάνω. Επίσης παιδιά, το script είναι στο GitHub, μπορεί να το κάνετε fork όσοι θέλετε.
mad-proffessor Δημοσ. 6 Ιανουαρίου 2014 Δημοσ. 6 Ιανουαρίου 2014 Αν πας σε gtk http://stackoverflow.com/questions/11804455/how-to-send-commands-to-pygobject-virtual-terminal/11810239#11810239 αυτο εδώ είναι έτοιμο virtual terminal δουλευει τέλεια, εγκαθιστάς μόνο τα απαραίτητα πακέτα devel/headers(vte3,gtk3,pygobject,glib). Μόλις το τέσταρα κ sudo και απο όλα. Gtk is not dead. Λογικά με ένα μενου, ένα textbox και ένα slider/spinbox καθαρίζεις. Χμ ίσως το κάνω clone και εγώ 1
drpaneas Δημοσ. 7 Ιανουαρίου 2014 Μέλος Δημοσ. 7 Ιανουαρίου 2014 Τωρα ειμαι σε φάση εξεταστικής οπότε δεν έχω χρόνο να το κάνω άμεσα, θα ξανα ασχοληθώ με το script μετά τον Φεβρουάριο. Ευχαριστώ πολύ για το feedback. You rock \m/
codesix Δημοσ. 7 Ιανουαρίου 2014 Δημοσ. 7 Ιανουαρίου 2014 Είσαι φοβερός , drpaneas αν καιδεν ξέω πολλά απο python μου φάνηκε πολύ καλή η ιδέα σου..Τι γίνετε όμως όταν κάποιος δεν έχει Internet ? Θα μπορούσε κάθε 2-3 μέρες να κατεβάζει τα σχόλια η τις απαντήσεις και να τις αποθηκεύει κάπου , έτσι ώστε ο χρήστης να αναζητά Offline ? Δεν ξέρω αν το σκέφτομαι σωστά
pmav99 Δημοσ. 7 Ιανουαρίου 2014 Δημοσ. 7 Ιανουαρίου 2014 @codesix Αυτό που λες απαιτεί να κάνεις scrape όλο το askubuntu. Δε νομίζω ότι είναι και πολύ πρακτικό να το κάνει ο κάθε ένας που εγκαθιστά την εφαρμογή (πολύ bandwidth και πολύς χρόνος). Αν και θα μπορούσε να γίνει από το drpaneas για τις top ερωτήσεις (για το FAQ που λέγαμε) και να τις έχεις μαζί με το deb.
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα