كود بايثون لتحميل ملف وتشغيله

تم تحميل الصفحة في 1,5921830 ثانية
كود بايثون لتحميل ملف وتشغيله

عـبـدالـله

.:: مُشرف قسم python ::.
rankrankrankrank
إنضم
5 ديسمبر 2013
المشاركات
1,395
الإعجابات
1,834
النقاط
198
الإقامة
KSA , KUW
السلام عليكم ورحمة الله وبركاته

اخواني فالله انا ما ادري اين حصلت الموضوع بالضبط في المنتدى يتكلم عن شفرة بالبايثون تحميل ملف وتشغيله
لكنني احببت ان اقوم بعمل كود بسيط حتى يستفيد منه الاعضاء


الكود عباره عن تحميل ملف على الجهاز وتشغيله

Python:
import os,wget

filename = 'c://folder'
if not os.makedirs(filename, exist_ok=True):
    url = 'https://archive.org/download/AdhaN_M_up-by-muslem/002--.mp3'
    Files = wget.download(url,filename)
    os.startfile(Files)
تحتاج الى تثبيت مكتبة wget
pip install wget


الكود بسيط
لكن تستطيع تطويره وتحويله الى ملف exe من خلال مكتبة PyInstaller ودمجه مع ملف ونشره


انا فقط حبيت اضعه حتى الكل يستفيد منه وبريء من يستخدمه فيما يضر اجهزة المسلمين

بالتوفيق لكم
 

عـبـدالـله

.:: مُشرف قسم python ::.
rankrankrankrank
إنضم
5 ديسمبر 2013
المشاركات
1,395
الإعجابات
1,834
النقاط
198
الإقامة
KSA , KUW
عذرآ الاستعجال مشكله

Python:
import os,wget

filename = 'c://folder'
if not os.makedirs(filename, exist_ok=True):
    url = 'https://archive.org/download/AdhaN_M_up-by-muslem/002--.mp3'
    Files = wget.download(url,filename)
    os.startfile(Files)
هذا افضل حتى اذا لم يكن هناك ملف يقوم بأنشاءه وانزال الملف بداخله

ليس لدي صلاحيات لتعديل الموضوع للاسف
 

عـبـدالـله

.:: مُشرف قسم python ::.
rankrankrankrank
إنضم
5 ديسمبر 2013
المشاركات
1,395
الإعجابات
1,834
النقاط
198
الإقامة
KSA , KUW
العفو اخي العزيز

وهذا ايضآ تصميم بسيط واجهة برنامج بالـ PyQt5


Python:
from PyQt5.QtWidgets import QLineEdit,QPushButton,QApplication,QWidget
import os,wget,sys

App = QApplication(sys.argv)

Dailogs = QWidget()
Dailogs.resize(300,100)
Dailogs.setWindowTitle('Downloading Files')


TextBox = QLineEdit(Dailogs)
TextBox.setGeometry(25,10,250,25)

Button = QPushButton('Click Here',Dailogs)
Button.setGeometry(100,50,100,30)

def Downloads():
    filename = 'c://folder'
    if not os.makedirs(filename, exist_ok=True):
        url = TextBox.text()
        Files = wget.download(url,filename)
        os.startfile(Files)

Button.clicked.connect(Downloads)

Dailogs.show()
sys.exit(App.exec())
بالتوفيق للجميع
 
إنضم
10 يناير 2018
المشاركات
532
الإعجابات
484
النقاط
63
الإقامة
Morocco
السلام عليكم اخي الغالي ممكن تشرح لي المكتبات وطريقة إستغلالها
وشكرا لك الأني لم أستطع التعامل معها
وهل أقوم بتتبيتها ؟؟؟؟
 

عـبـدالـله

.:: مُشرف قسم python ::.
rankrankrankrank
إنضم
5 ديسمبر 2013
المشاركات
1,395
الإعجابات
1,834
النقاط
198
الإقامة
KSA , KUW
السلام عليكم اخي الغالي ممكن تشرح لي المكتبات وطريقة إستغلالها
وشكرا لك الأني لم أستطع التعامل معها
وهل أقوم بتتبيتها ؟؟؟؟
اذا الاصدار المستخدم لديك Python 3.6

تثبيت مكتبة wget

pip install wget

تثبيت مكتبة PyQt5

pip install PyQt5

pip install pyqt5-tools

عند الانتهاء الدخول الى المسار الخاص بالاصدار البايثون انا ثبت البايثون بقرص C

C:\Python36\Lib\site-packages\pyqt5-tools

نحصل ملف designer

قم بنقله لسطح المكتب اذا اردنا ان نصمم بالواجهات قبل ان نتعامل مع الكود البرمجي نتعامل مع الـ designer

وايضآ نستطيع التعامل بالكود البرمجي لتصميم الواجهات

تثبيت مكتبة pyinstaller لتحويل الـ Py الى الـ exe

pip install pyinstaller

تنصيب مكتبة requests

pip install requests

تثبيت مكتبة selenuim

pip install selenium

هذي اهم مكتبات حاليه ..

وهناك الكثير من المكتبات المفيده ..


بخصوص المكتبات ومعرفة الدوال هناك طريقتين اما عن طريق موقع بايثون

Welcome to Python.org

او عن طريق كتابة الامر التالي لأظهار جميع الداول الخاصه بالمكتبه

import os

((print(dir(os
 
إنضم
10 يناير 2018
المشاركات
532
الإعجابات
484
النقاط
63
الإقامة
Morocco
اذا الاصدار المستخدم لديك Python 3.6

تثبيت مكتبة wget

pip install wget

تثبيت مكتبة PyQt5

pip install PyQt5

pip install pyqt5-tools

عند الانتهاء الدخول الى المسار الخاص بالاصدار البايثون انا ثبت البايثون بقرص C

C:\Python36\Lib\site-packages\pyqt5-tools

نحصل ملف designer

قم بنقله لسطح المكتب اذا اردنا ان نصمم بالواجهات قبل ان نتعامل مع الكود البرمجي نتعامل مع الـ designer

وايضآ نستطيع التعامل بالكود البرمجي لتصميم الواجهات

تثبيت مكتبة pyinstaller لتحويل الـ Py الى الـ exe

pip install pyinstaller

تنصيب مكتبة requests

pip install requests

تثبيت مكتبة selenuim

pip install selenium

هذي اهم مكتبات حاليه ..

وهناك الكثير من المكتبات المفيده ..


بخصوص المكتبات ومعرفة الدوال هناك طريقتين اما عن طريق موقع بايثون

Welcome to Python.org

او عن طريق كتابة الامر التالي لأظهار جميع الداول الخاصه بالمكتبه

import os

((print(dir(os
شكرا لك اخي الغالي على شرحك المفصل والجميل شكرا لك المكتبات الاولة موجودة الأستخدم نظام لينكس
لاكن تواجهني مشاكل في designer
والواجهة الأني أتبعت الشرح الخاص بك ولم افهم الى الرياح ههههه
 
إنضم
10 يناير 2018
المشاركات
532
الإعجابات
484
النقاط
63
الإقامة
Morocco
شكرا لك اخي الغالي على شرحك المفصل والجميل شكرا لك المكتبات الاولة موجودة الأستخدم نظام لينكس
لاكن تواجهني مشاكل في designer
والواجهة الأني أتبعت الشرح الخاص بك ولم افهم الى الرياح ههههه
وجت ما أريد في الموقع شكرا لك والله انت شخص مفيد جدا الله يكرمك يرب
أي سؤل سوف أرسالك اخي الغالي شكرا
 

عـبـدالـله

.:: مُشرف قسم python ::.
rankrankrankrank
إنضم
5 ديسمبر 2013
المشاركات
1,395
الإعجابات
1,834
النقاط
198
الإقامة
KSA , KUW
وجت ما أريد في الموقع شكرا لك والله انت شخص مفيد جدا الله يكرمك يرب
أي سؤل سوف أرسالك اخي الغالي شكرا
ان شاء الله بالخدمه اخي العزيز بالتوفيق لك
 

عـبـدالـله

.:: مُشرف قسم python ::.
rankrankrankrank
إنضم
5 ديسمبر 2013
المشاركات
1,395
الإعجابات
1,834
النقاط
198
الإقامة
KSA , KUW
اخي لا يشتغل معي هذا السطر
os.startfile(Files)
الكود يشتغل بدون مشاكل

لكن ربما لم تقم بتنصيب مكتبة wget

pip install wget

واذا كنت منصبها ضع رسالة الخطئ حتى اقدر اساعدك اكثر
 
إنضم
21 مارس 2018
المشاركات
83
الإعجابات
65
النقاط
18
العمر
23
الكود يشتغل بدون مشاكل

لكن ربما لم تقم بتنصيب مكتبة wget

pip install wget

واذا كنت منصبها ضع رسالة الخطئ حتى اقدر اساعدك اكثر
انا منصبها هذي رسالة الخطا
Traceback (most recent call last):
File "sc.py", line 2, in <module>
os.startfile("hh.txt")
AttributeError: 'module' object has no attribute 'startfile'
يقول ان
startfile
غير موجودة
 

عـبـدالـله

.:: مُشرف قسم python ::.
rankrankrankrank
إنضم
5 ديسمبر 2013
المشاركات
1,395
الإعجابات
1,834
النقاط
198
الإقامة
KSA , KUW
انا منصبها هذي رسالة الخطا
Traceback (most recent call last):
File "sc.py", line 2, in <module>
os.startfile("hh.txt")
AttributeError: 'module' object has no attribute 'startfile'
يقول ان
startfile
غير موجودة
حرام عليك يا اخي العزيز الكود مكتوب بشكل اخر وانت كاتبه بشكل اخر ايضآ

شلون تفتح ملف hh.txt والكود مخصص لتحميل ملف وتشغيله

اذا اردت تحمل ملف بمتداد txt من موقع نضع رابط الصفحه

جرب هذا

كود:
import os,wget

filename = 'c://folder'
if not os.makedirs(filename, exist_ok=True):
    url = 'https://www.w3schools.com/js/json_demo.txt'
    Files = wget.download(url,filename)
    os.startfile(Files)
بعدين دالة startfile تشغل الملف الذي تم تحميله بداخل المجلد كيف تطلب منه يفتح ملف txt

اذا اردت التعامل مع txt استخدم open

كود:
opn = open('test.txt','w')
print(opn.readline())
 
إنضم
21 مارس 2018
المشاركات
83
الإعجابات
65
النقاط
18
العمر
23
حرام عليك يا اخي العزيز الكود مكتوب بشكل اخر وانت كاتبه بشكل اخر ايضآ

شلون تفتح ملف hh.txt والكود مخصص لتحميل ملف وتشغيله

اذا اردت تحمل ملف بمتداد txt من موقع نضع رابط الصفحه

جرب هذا

كود:
import os,wget

filename = 'c://folder'
if not os.makedirs(filename, exist_ok=True):
    url = 'https://www.w3schools.com/js/json_demo.txt'
    Files = wget.download(url,filename)
    os.startfile(Files)
بعدين دالة startfile تشغل الملف الذي تم تحميله بداخل المجلد كيف تطلب منه يفتح ملف txt

اذا اردت التعامل مع txt استخدم open

كود:
opn = open('test.txt','w')
print(opn.readline())
اخي اسف تعبتك معايا لكن ممكن تشرحلي هذا السطر بالتفصيل
if not os.makedirs(filename, exist_ok=True):
مامعنى
exist_ok=True
وماذا تعني
if not
 

عـبـدالـله

.:: مُشرف قسم python ::.
rankrankrankrank
إنضم
5 ديسمبر 2013
المشاركات
1,395
الإعجابات
1,834
النقاط
198
الإقامة
KSA , KUW
واذا اردت التعامل مع startfile لفتح ملف يجب ان نضع الملف بالمكان الصحيح

مثلآ نضع test.txt

ونكتب

import os
("os.startfile('test.txt

اخي اسف تعبتك معايا لكن ممكن تشرحلي هذا السطر بالتفصيل
if not os.makedirs(filename, exist_ok=True):
مامعنى
exist_ok=True
وماذا تعني
if not
if not اذا لم يكن
المجلد filename موجود قم بأنشائه
و exist_ok اذا يوجد المجلد صحيح موجود اكمل باقي الكود

دالة انشاء مجلد في المسار المحدد له makedirs

os المكتبة الخاصه بالدوال التعامل مع النظام مثل البحث الحذف التشغيل الانتقال بين المجلدات الخ ..

هنا جميع دوال بايثون
The Python Standard Library — Python 3.6.5rc1 documentation
وهذا مثال على دوال مكتبة os
16.1. os — Miscellaneous operating system interfaces — Python 3.6.5rc1 documentation
 
إنضم
21 مارس 2018
المشاركات
83
الإعجابات
65
النقاط
18
العمر
23
واذا اردت التعامل مع startfile لفتح ملف يجب ان نضع الملف بالمكان الصحيح

مثلآ نضع test.txt

ونكتب

import os
("os.startfile('test.txt



if not اذا لم يكن
المجلد filename موجود قم بأنشائه
و exist_ok اذا يوجد المجلد صحيح موجود اكمل باقي الكود

دالة انشاء مجلد في المسار المحدد له makedirs

os المكتبة الخاصه بالدوال التعامل مع النظام مثل البحث الحذف التشغيل الانتقال بين المجلدات الخ ..

هنا جميع دوال بايثون
The Python Standard Library — Python 3.6.5rc1 documentation
وهذا مثال على دوال مكتبة os
16.1. os — Miscellaneous operating system interfaces — Python 3.6.5rc1 documentation
اخي لا اعلم لماذا الكود الخاص بك لا يريد الاشتغال معي انا كتبته بطريقة اخرى اقصد كود انشاء مجلد
كود:
import os
try:os.makedirs("yy/uu/ii/oo")
except:print("hmm")
وايضا عن startfile
dir(os)
لا تظهر لي دالة startfile
اعتذر عن ازعاجك ربما لم يعمل لاني استخدم لينكس
للعلم
filename = 'هنا كتبت بنظام مسارات لينكس'
شكرا على كل حال اخي العزيز
 

عـبـدالـله

.:: مُشرف قسم python ::.
rankrankrankrank
إنضم
5 ديسمبر 2013
المشاركات
1,395
الإعجابات
1,834
النقاط
198
الإقامة
KSA , KUW
اخي لا اعلم لماذا الكود الخاص بك لا يريد الاشتغال معي انا كتبته بطريقة اخرى اقصد كود انشاء مجلد
كود:
import os
try:os.makedirs("yy/uu/ii/oo")
except:print("hmm")
وايضا عن startfile
dir(os)
لا تظهر لي دالة startfile
اعتذر عن ازعاجك ربما لم يعمل لاني استخدم لينكس
للعلم
filename = 'هنا كتبت بنظام مسارات لينكس'
شكرا على كل حال اخي العزيز
يظهر فقط اكتب

import os

((print(dir(os

يظهرلك جميع الدوال بهذا الشكل

كود:
['DirEntry', 'F_OK', 'MutableMapping', 'O_APPEND', 'O_BINARY', 'O_CREAT', 'O_EXCL',
'O_NOINHERIT', 'O_RANDOM', 'O_RDONLY', 'O_RDWR', 'O_SEQUENTIAL', 'O_SHORT_LIVED',
'O_TEMPORARY', 'O_TEXT', 'O_TRUNC', 'O_WRONLY', 'P_DETACH', 'P_NOWAIT', 'P_NOWAITO',
'P_OVERLAY', 'P_WAIT', 'PathLike', 'R_OK', 'SEEK_CUR', 'SEEK_END', 'SEEK_SET', 'TMP_MAX',
'W_OK', 'X_OK', '_Environ', '__all__', '__builtins__', '__cached__', '__doc__', '__file__',
'__loader__', '__name__', '__package__', '__spec__', '_execvpe', '_exists', '_exit', '_fspath',
'_get_exports_list', '_putenv', '_unsetenv', '_wrap_close', 'abc', 'abort', 'access', 'altsep',
'chdir', 'chmod', 'close', 'closerange', 'cpu_count', 'curdir', 'defpath', 'device_encoding',
'devnull', 'dup', 'dup2', 'environ', 'errno', 'error', 'execl', 'execle', 'execlp', 'execlpe',
'execv', 'execve', 'execvp', 'execvpe', 'extsep', 'fdopen', 'fsdecode', 'fsencode', 'fspath',
'fstat', 'fsync', 'ftruncate', 'get_exec_path', 'get_handle_inheritable', 'get_inheritable',
'get_terminal_size', 'getcwd', 'getcwdb', 'getenv', 'getlogin', 'getpid', 'getppid', 'isatty',
'kill', 'linesep', 'link', 'listdir', 'lseek', 'lstat', 'makedirs', 'mkdir', 'name', 'open',
'pardir', 'path', 'pathsep', 'pipe', 'popen', 'putenv', 'read', 'readlink', 'remove',
'removedirs', 'rename', 'renames', 'replace', 'rmdir', 'scandir', 'sep',
'set_handle_inheritable', 'set_inheritable', 'spawnl', 'spawnle', 'spawnv', 'spawnve', 'st',
'startfile', 'stat', 'stat_float_times', 'stat_result', 'statvfs_result', 'strerror',
'supports_bytes_environ', 'supports_dir_fd', 'supports_effective_ids', 'supports_fd',
'supports_follow_symlinks', 'symlink', 'sys', 'system', 'terminal_size', 'times',
'times_result', 'truncate', 'umask', 'uname_result', 'unlink', 'urandom', 'utime',
'waitpid', 'walk', 'write']

الافضل تعلم اساسيات لغة بايثون حتى يسهل عليك قراءة الكود ويبقى فقط تعلم استخدام المكتبات
 

عـبـدالـله

.:: مُشرف قسم python ::.
rankrankrankrank
إنضم
5 ديسمبر 2013
المشاركات
1,395
الإعجابات
1,834
النقاط
198
الإقامة
KSA , KUW
ملاحظه :

المسارات في نظام لينوكس يختلف عن مسارات نظام ويندوز

اللغة تعمل في جميع الانظمة لكن عليك معرفة مسارات النظام لديك حتى تستطيع التعامل مع دوال os

مثلآ في نظام لينوكس نستخدم ls لعرض الملفات او المجلدات وموقعنا حاليآ
في نظام ويندوز نستخدم dir لعرض الملفات والمجلدات وموقعنا حاليآ

في نظام لينكس clear للتنظيف
في نظام ويندوز cls للتنظيف

الخ ..

اذا اردنا الانتقال الى مجلد في لينوكس نستخدم cd /opt
اذا ارتنا الانتقال الى مجلد في ويندوز نستخدم cd C:/Folders

لازم تعرف اوامر لينوكس حتى يسهل عليك تطبيقها بالبرمجه
 

الأعضاء النشطين حاليآ الذين يشاهدون هذا الموضوع (1 عضو و 1 ضيف)

خيارات الاستايل

نوع الخط
مودك
اخفاء السايدر بار OFF
توسيط المنتدى OFF
فصل الأقسام OFF
الأقسام الفرعية OFF
عرض المشاركات
حجم الخط
معلومات العضو OFF
إخفاء التوقيع OFF

إرجاع خيارات الإستايل