نحن نتطلع إلى تحسين استخدامنا للكلمات الرئيسية لتغطية المواقف التي قد يواجه فيها المطور صعوبة في كتابة مهمة للروبوت بسلاسة. قم بوصف الموقف الذي تتباطأ فيه سرعة التنفيذ لديك بسبب عدم وجود صياغة أسهل.
التعليق هنا
RPA Framework عبارة عن مجموعة من المكتبات والأدوات مفتوحة المصدر لأتمتة العمليات الروبوتية (RPA)، وهي مصممة للاستخدام مع كل من Robot Framework وPython. الهدف هو تقديم مكتبات أساسية موثقة جيدًا ويتم صيانتها بشكل نشط لمطوري برامج الروبوت.
تعرف على المزيد حول تقنية RPA في وثائق Robocorp.
المشروع هو :
من الحزم المذكورة أعلاه، rpaframework -core
و rpaframework -recognition
هي حزم دعم، والتي لا تحتوي وحدها على أي مكتبات.
يتضمن مشروع إطار عمل RPA حاليًا المكتبات التالية:
علامة x
الموجودة في عمود PACKAGE تعني أن المكتبة مضمنة في حزمة rpaframework وعلى سبيل المثال. x,pdf
يعني أن مكتبة RPA.PDF
متوفرة في حزمتي rpaframework و rpaframework -pdf .
اسم المكتبة | وصف | طَرد |
أرشيف | أرشفة ملفات TAR و ZIP | س |
مساعد | عرض المعلومات للمستخدم وطلب الإدخال. | مساعد |
Browser.Selenium | التحكم في المتصفحات وأتمتة الويب | س |
Browser.Playwright | أحدث طريقة للتحكم في المتصفحات | خاص (المزيد أدناه) |
تقويم | للتلاعب بالتاريخ والوقت | س |
Cloud.AWS | استخدم خدمات أمازون AWS | س، أوس |
Cloud.Azure | استخدم خدمات Microsoft Azure | س |
كلاود.جوجل | استخدم خدمات جوجل السحابية | جوجل |
تشفير | عمليات التجزئة والتشفير الشائعة | س |
قاعدة البيانات | التفاعل مع قواعد البيانات | س |
سطح المكتب | أتمتة سطح المكتب عبر الأنظمة الأساسية | س |
سطح المكتب.الحافظة | التفاعل مع حافظة النظام | س |
Desktop.OperatingSystem | قراءة معلومات نظام التشغيل ومعالجة العمليات | س |
DocumentAI | مجمع معالجة المستندات الذكية | س |
DocumentAI.Base64AI | خدمة معالجة المستندات الذكية | س |
DocumentAI.Nanonets | خدمة معالجة المستندات الذكية | س |
البريد الإلكتروني. تبادل | عمليات البريد الإلكتروني (بروتوكول التبادل) | س |
Email.ImapSmtp | عمليات البريد الإلكتروني (IMAP وSMTP) | س |
Excel.Application | التحكم في تطبيق Excel لسطح المكتب | س |
ملفات Excel | التعامل مع ملفات Excel مباشرة | س |
نظام الملفات | قراءة ومعالجة الملفات والمسارات | س |
بروتوكول نقل الملفات | التفاعل مع خوادم FTP | س |
HTTP | التفاعل مباشرة مع واجهات برمجة تطبيقات الويب | س |
هوبسبوت | الوصول إلى كائنات بيانات HubSpot CRM | hubspot |
الصور | التلاعب بالصور | س |
JavaAccessBridge | التحكم في تطبيقات جافا | س |
JSON | التعامل مع كائنات JSON | س |
وزارة الخارجية | المصادقة باستخدام كلمات المرور لمرة واحدة (OTP) وOAuth2 | س |
المخطر | إخطار الرسائل باستخدام خدمات مختلفة | س |
OpenAI | خدمة الذكاء الاصطناعي | openai |
Outlook.Application | التحكم في تطبيق Outlook لسطح المكتب | س |
قوات الدفاع الشعبي | قراءة وإنشاء مستندات PDF | س، قوات الدفاع الشعبي |
Robocorp.Process | استخدم واجهة برمجة تطبيقات عملية Robocorp | س |
Robocorp.WorkItems | استخدم واجهة برمجة تطبيقات عناصر عمل Robocorp | س |
Robocorp.Vault | استخدم واجهة برمجة تطبيقات Robocorp Secrets | س |
Robocorp.Storage | استخدم واجهة برمجة تطبيقات Robocorp Asset Storage | س |
قوة المبيعات | عمليات Salesforce | س |
ساب | التحكم في عميل سطح المكتب SAP GUI | س |
ورقة ذكية | الوصول إلى أوراق Smartsheet | س |
الجداول | التعامل مع البيانات الجدولية وفرزها وتصفيتها | س |
المهام | التحكم في تنفيذ المهمة | س |
تغريد | واجهة تويتر API | س |
ويندوز | مكتبة بديلة لأتمتة ويندوز | س، ويندوز |
كلمة.التطبيق | التحكم في تطبيق Word لسطح المكتب | س |
يتطلب RPA.Browser.Playwright في الوقت الحالي تثبيتًا خاصًا، نظرًا لحجم الحزمة وخطوة ما بعد التثبيت، يجب تثبيته بالكامل.
الحد الأدنى المطلوب من conda.yaml لتثبيت Playwright:
channels :
- conda-forge
dependencies :
- python=3.9.16
- nodejs=16.14.2
- pip=22.1.2
- pip :
- robotframework-browser==17.2.0
- rpaframework ==24.1.2
rccPostInstall :
- rfbrowser init
تعرف على كيفية تثبيت حزم Python في تثبيت حزم Python.
طريقة التثبيت الافتراضية مع أدوات مطور Robocorp باستخدام conda.yaml:
channels :
- conda-forge
dependencies :
- python=3.9.16
- pip=22.1.2
- pip :
- rpaframework ==24.1.2
لتثبيت جميع الحزم الإضافية (بما في ذلك تبعيات Playwright)، يمكنك استخدام:
channels :
- conda-forge
dependencies :
- python=3.9.16
- tesseract=4.1.1
- nodejs=16.14.2
- pip=22.1.2
- pip :
- robotframework-browser==17.2.0
- rpaframework ==24.1.2
- rpaframework -aws==5.2.8
- rpaframework -google==7.0.3
- rpaframework -recognition==5.1.2
rccPostInstall :
- rfbrowser init
تثبيت منفصل لمكتبات AWS وPDF وWindows بدون rpaframework
الرئيسي:
channels :
- conda-forge
dependencies :
- python=3.9.16
- pip=22.1.2
- pip :
- rpaframework -aws==5.2.8 # included in the rpaframework as an extra
- rpaframework -pdf==7.1.5 # included in the rpaframework by default
- rpaframework -windows==7.3.2 # included in the rpaframework by default
طريقة التثبيت مع النقطة باستخدام Python venv:
python -m venv .venv
source .venv/bin/activate
pip install rpaframework
ملحوظة
مطلوب بيثون 3.8 أو أعلى
بعد التثبيت، يمكن استيراد المكتبات مباشرة داخل Robot Framework:
*** Settings ***
Library RPA.Browser.Selenium
*** Tasks ***
Login as user
Open available browser https://example.com
Input text id:user-name ${ USERNAME }
Input text id:password ${ PASSWORD }
المكتبات متاحة أيضًا داخل بايثون:
from RPA . Browser . Selenium import Selenium
lib = Selenium ()
lib . open_available_browser ( "https://example.com" )
lib . input_text ( "id:user-name" , username )
lib . input_text ( "id:password" , password )
العثور على خطأ؟ في عداد المفقودين ميزة حاسمة؟ هل أنت مهتم بالمساهمة؟ توجه إلى دليل المساهمة لمعرفة من أين تبدأ.
يعتمد تطوير المستودع على لغة Python ويتطلب تثبيت إصدار Python 3.8+ على الأقل على جهاز التطوير. إصدار Python الافتراضي المستخدم في قالب Robocorp Robot هو 3.9.16، لذا فهو اختيار جيد لتثبيت الإصدار. الإصدارات غير الموصى بها هي 3.7.6 و3.8.1، لأنها تحتوي على مشكلات مع بعض التبعيات المتعلقة بـ rpaframework
. في ذلك الوقت، لا يُنصح أيضًا باستخدام إصدارات Python الأحدث التي تبدأ من 3.11، لأن بعض التبعيات قد تسبب مشكلات.
تعتمد أدوات تطوير المستودع على الشعر والاستدعاء. الشعر هو الأداة الأساسية المستخدمة لتجميع الحزمة وإنشائها وتشغيلها. يتم استخدام الاستدعاء لأغراض البرمجة النصية، على سبيل المثال لمهام الفحص والاختبار والنشر.
قبل كتابة أي تعليمات برمجية، يرجى قراءة دليل التطوير الشامل الخاص بنا والإقرار به.
الخطوات الأولى لبدء التطوير:
poetry config virtualenvs.path null
poetry config virtualenvs.in-project true
poetry config repositories.devpi " https://devpi.robocorp.cloud/ci/test "
git استنساخ المستودع
قم بإنشاء فرع Git جديد أو قم بالتبديل إلى الفرع الصحيح أو البقاء في الفرع الرئيسي
poetry install
الذي يقوم بتثبيت الحزمة مع تبعياتها في دليل .venv الخاص بالحزمة، على سبيل المثال packages/main/.venv
في حالة الاختبار ضد Robocorp Robot الذي يستخدم devdata/env.json
poetry build
واستخدام ملف .whl الناتج (في الدليل dist/ ) في Robot conda.yamlpoetry build
وادفع ملف .whl الناتج (في الدليل dist/ ) إلى مستودع واستخدم عنوان url الأولي لتضمينه في Robot conda.yamlpoetry publish --ci
ونقطة conda.yaml لاستخدام إصدار rpaframework في devpi poetry run python -m robot <ROBOT_ARGS> <TARGET_ROBOT_FILE>
--report NONE --outputdir output --logtitle "Task log"
poetry run python <TARGET_PYTHON_FILE>
invoke lint
للتأكد من أن تنسيق التعليمات البرمجية يتوافق مع إرشادات مستودع rpaframework . من الممكن والمحتمل أن يفشل إجراء Github إذا لم يقم المطور بفحص تغييرات التعليمات البرمجية. يعتمد تنسيق التعليمات البرمجية على الأسود وflake8 ويتم تشغيلهما باستخدام invoke lint
.
يمكن إنشاء وثائق المكتبة في جذر المستودع (ما يسمى بمستوى الحزمة "الوصفية"). تم إنشاء الوثائق بواسطة أدوات docgen باستخدام الإصدار المثبت محليًا من المشروع، وستنعكس التغييرات المحلية للحزمة الرئيسية في كل مرة تقوم فيها بإنشاء المستندات، ولكن إذا كنت تريد رؤية التغييرات المحلية للحزم الاختيارية، فيجب عليك استخدام invoke install-local --package <package_name>
باستخدام اسم الحزمة المناسب (على سبيل المثال، rpaframework -aws
). سيؤدي هذا إلى إعادة تثبيت هذه الحزمة كإصدار محلي قابل للتحرير بدلاً من PyPI. يمكن إضافة العديد من هذه الحزم عن طريق تكرار استخدام خيار --package
. من أجل إعادة تعيين هذا، استخدم invoke install --reset
.
poetry update
و/أو invoke install-local --package <package name>
make docs
docs/build/html/index.html
باستخدام المتصفح لعرض التغييرات أو تنفيذ make local
وانتقل إلى localhost:8000
لعرض المستندات كصفحة ويب محلية مباشرة. # Before
[ tool . poetry . dependencies ]
python = " ^3.8 "
rpaframework = { path = " packages/main " , extras = [ " cv " , " playwright " , " aws " ] }
rpaframework -google = " ^4.0.0 "
rpaframework -windows = " ^4.0.0 "
# After
[ tool . poetry . dependencies ]
python = " ^3.8 "
rpaframework = { path = " packages/main " , extras = [ " cv " , " playwright " ] }
rpaframework -aws = { path = " packages/aws " }
rpaframework -google = " ^4.0.0 "
rpaframework -windows = " ^4.0.0 "
invoke test
(سيؤدي هذا إلى تشغيل كل من اختبارات وحدات Python واختبارات robotframework المحددة في دليل اختبارات الحزم/ )
poetry run pytest path/to/test.py::test_function
inv testrobot -r <robot_name> -t <task_name>
git ارتكاب التغييرات
git دفع التغييرات إلى جهاز التحكم عن بعد
إنشاء طلب سحب من الفرع يصف التغييرات المضمنة في الوصف
تحديث docs/source/releasenotes.rst بالتغييرات (الالتزام والدفع)
تتم التعبئة والنشر بعد دمج التغييرات في الفرع الرئيسي. يجب تنفيذ جميع الخطوات التالية داخل الفرع الرئيسي.
invoke lint
invoke test
poetry update
invoke publish
بعد أن يكون إجراء Github على الفرع الرئيسي باللون الأخضربعض الأدوات الموصى بها للتطوير
Visual Studio Code كمحرر تعليمات برمجية بالملحقات التالية:
- كود روبوكورب
- خادم لغة الروبوت الإطار
- جيت لينس
- امتداد بايثون
سيجعل GitHub Desktop إدارة الإصدارات أقل عرضة للأخطاء
هذا المشروع مفتوح المصدر ومرخص بموجب شروط ترخيص Apache 2.0.