เรากำลังพิจารณาการปรับปรุงการใช้คำหลักของเราเพื่อให้ครอบคลุมสถานการณ์ที่นักพัฒนาซอฟต์แวร์อาจประสบปัญหาในการเขียนงานสำหรับ Robot ได้อย่างราบรื่น อธิบายสถานการณ์ที่ ความเร็วในการใช้งานของคุณช้าลง เนื่องจากไม่มีไวยากรณ์ที่ง่ายกว่า
ความคิดเห็นที่นี่
RPA Framework คือคอลเลกชันของไลบรารีโอเพ่นซอร์สและเครื่องมือสำหรับ Robotic Process Automation (RPA) และได้รับการออกแบบมาให้ใช้กับทั้ง Robot Framework และ Python เป้าหมายคือการนำเสนอไลบรารีหลักที่มีการจัดทำเอกสารอย่างดีและได้รับการดูแลอย่างดีสำหรับนักพัฒนาหุ่นยนต์ซอฟต์แวร์
เรียนรู้เพิ่มเติมเกี่ยวกับ RPA ที่เอกสาร Robocorp
โครงการคือ:
จากแพ็คเกจข้างต้น rpaframework -core
และ rpaframework -recognition
เป็นแพ็คเกจสนับสนุน ซึ่งเพียงอย่างเดียว ไม่มี ไลบรารีใดๆ
ปัจจุบันโครงการ RPA Framework มีไลบรารีดังต่อไปนี้:
x
ในคอลัมน์ PACKAGE หมายความว่าไลบรารี นั้น รวมอยู่ในแพ็คเกจ rpaframework เป็นต้น x,pdf
หมายความว่าไลบรารี RPA.PDF
มีให้ในแพ็คเกจ rpaframework และ rpaframework -pdf
ชื่อห้องสมุด | คำอธิบาย | บรรจุุภัณฑ์ |
คลังเก็บเอกสารสำคัญ | การเก็บถาวรไฟล์ TAR และ ZIP | x |
ผู้ช่วย | แสดงข้อมูลแก่ผู้ใช้และขออินพุต | ผู้ช่วย |
เบราว์เซอร์.ซีลีเนียม | ควบคุมเบราว์เซอร์และทำให้เว็บเป็นแบบอัตโนมัติ | x |
เบราว์เซอร์นักเขียนบทละคร | วิธีใหม่ในการควบคุมเบราว์เซอร์ | พิเศษ (เพิ่มเติมด้านล่าง) |
ปฏิทิน | สำหรับการปรับเปลี่ยนวันที่และเวลา | x |
คลาวด์. AWS | ใช้บริการ Amazon AWS | เอ็กซ์ แย่จัง |
คลาวด์.อาซัวร์ | ใช้บริการ Microsoft Azure | x |
คลาวด์.กูเกิล | ใช้บริการของ Google Cloud | |
การเข้ารหัสลับ | การดำเนินการแฮชและการเข้ารหัสทั่วไป | x |
ฐานข้อมูล | โต้ตอบกับฐานข้อมูล | x |
เดสก์ท็อป | เดสก์ท็อปอัตโนมัติข้ามแพลตฟอร์ม | x |
เดสก์ท็อปคลิปบอร์ด | โต้ตอบกับคลิปบอร์ดของระบบ | x |
สก์ท็อป.ระบบปฏิบัติการ | อ่านข้อมูลระบบปฏิบัติการและจัดการกระบวนการ | x |
เอกสารAI | เครื่องห่อการประมวลผลเอกสารอัจฉริยะ | x |
เอกสารAI.Base64AI | บริการประมวลผลเอกสารอัจฉริยะ | x |
DocumentAI.นาโนเน็ต | บริการประมวลผลเอกสารอัจฉริยะ | x |
อีเมล์แลกเปลี่ยน | การดำเนินการอีเมล์ (โปรโตคอลการแลกเปลี่ยน) | x |
อีเมล์.ImapSmtp | การดำเนินการอีเมล์ (IMAP & SMTP) | x |
Excel.แอปพลิเคชัน | ควบคุมแอปพลิเคชัน Excel บนเดสก์ท็อป | x |
Excel.ไฟล์ | จัดการไฟล์ Excel โดยตรง | x |
ระบบไฟล์ | อ่านและจัดการไฟล์และเส้นทาง | x |
เอฟทีพี | โต้ตอบกับเซิร์ฟเวอร์ FTP | x |
HTTP | โต้ตอบโดยตรงกับเว็บ API | x |
ฮับสปอต | เข้าถึงออบเจ็กต์ข้อมูล HubSpot CRM | จุดศูนย์กลาง |
รูปภาพ | จัดการภาพ | x |
JavaAccessBridge | ควบคุมแอปพลิเคชัน Java | x |
เจสัน | จัดการวัตถุ JSON | x |
มฟล | ตรวจสอบสิทธิ์โดยใช้รหัสผ่านครั้งเดียว (OTP) และ OAuth2 | x |
ผู้แจ้ง | แจ้งเตือนข้อความโดยใช้บริการต่างๆ | x |
OpenAI | บริการปัญญาประดิษฐ์ | เปิดใจ |
Outlook.แอปพลิเคชัน | ควบคุมแอปพลิเคชัน Outlook บนเดสก์ท็อป | x |
อ่านและสร้างเอกสาร PDF | เอ็กซ์,pdf | |
Robocorp กระบวนการ | ใช้ Robocorp Process API | x |
Robocorp.WorkItems | ใช้ API รายการงาน Robocorp | x |
Robocorp.ห้องนิรภัย | ใช้ Robocorp Secrets API | x |
Robocorp.การจัดเก็บ | ใช้ Robocorp Asset Storage API | x |
พนักงานขาย | การดำเนินงานของพนักงานขาย | x |
เอสเอพี | ควบคุมไคลเอ็นต์เดสก์ท็อป SAP GUI | x |
สมาร์ทชีท | เข้าถึงแผ่นงาน Smartsheet | x |
ตาราง | จัดการ จัดเรียง และกรองข้อมูลแบบตาราง | x |
งาน | ควบคุมการปฏิบัติงาน | x |
ทวิตเตอร์ | อินเทอร์เฟซ Twitter API | x |
หน้าต่าง | ไลบรารีทางเลือกสำหรับระบบอัตโนมัติของ Windows | x,หน้าต่าง |
เวิร์ด.แอพพลิเคชั่น | ควบคุมแอปพลิเคชัน Word บนเดสก์ท็อป | x |
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 Developer Tools โดยใช้ conda.yaml:
channels :
- conda-forge
dependencies :
- python=3.9.16
- pip=22.1.2
- pip :
- rpaframework ==24.1.2
หากต้องการติดตั้งแพ็คเกจพิเศษทั้งหมด (รวมถึงการพึ่งพานักเขียนบทละคร) คุณสามารถใช้:
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
วิธีการติดตั้งด้วย pip โดยใช้ Python venv:
python -m venv .venv
source .venv/bin/activate
pip install rpaframework
บันทึก
ต้องใช้ Python 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 }
ไลบรารี่ยังมีอยู่ใน Python:
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 เนื่องจากการขึ้นต่อกันบางอย่างอาจทำให้เกิดปัญหาได้
เครื่องมือการพัฒนาพื้นที่เก็บข้อมูลมีพื้นฐานมาจากบทกวีและการวิงวอน กวีนิพนธ์เป็นเครื่องมือสำคัญที่ใช้ในการคอมไพล์ สร้าง และรันแพ็คเกจ Invivo ใช้เพื่อวัตถุประสงค์ในการเขียนสคริปต์ เช่น สำหรับงาน Linting การทดสอบ และการเผยแพร่
ก่อนที่จะเขียนโค้ดใดๆ โปรดอ่านและรับทราบคู่มือการพัฒนาโดยละเอียดของเรา
ขั้นตอนแรกในการเริ่มพัฒนา:
poetry config virtualenvs.path null
poetry config virtualenvs.in-project true
poetry config repositories.devpi " https://devpi.robocorp.cloud/ci/test "
คอมไพล์โคลนพื้นที่เก็บข้อมูล
สร้างสาขา 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
และ point 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 จะล้มเหลว หากนักพัฒนาไม่ได้ทำการ Linit การเปลี่ยนแปลงโค้ด การจัดรูปแบบโค้ดจะขึ้นอยู่กับสีดำและเกล็ด 8 และสิ่งเหล่านี้จะทำงานด้วยการ invoke lint
สามารถสร้างเอกสารไลบรารีได้ในระดับรูทของพื้นที่เก็บข้อมูล (เรียกว่าระดับแพ็กเกจ "meta") เอกสารประกอบถูกสร้างขึ้นโดยเครื่องมือ 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 unittests และการทดสอบ robotframework ที่กำหนดไว้ในแพ็คเกจ tests/ directory )
poetry run pytest path/to/test.py::test_function
inv testrobot -r <robot_name> -t <task_name>
git กระทำการเปลี่ยนแปลง
git push เปลี่ยนเป็นรีโมต
สร้างคำขอดึงจากสาขาที่อธิบายการเปลี่ยนแปลงที่รวมอยู่ในคำอธิบาย
อัปเดต docs/source/releasenotes.rst พร้อมการเปลี่ยนแปลง (กระทำและพุช)
การบรรจุและการเผยแพร่เสร็จสิ้นหลังจากรวมการเปลี่ยนแปลงเข้ากับสาขาหลักแล้ว ขั้นตอนต่อไปนี้ทั้งหมดควรทำภายในสาขาหลัก
invoke lint
และ invoke test
poetry update
invoke publish
หลังจากการดำเนินการ Github บนสาขาหลักเป็นสีเขียวทั้งหมดเครื่องมือที่แนะนำสำหรับการพัฒนาบางส่วน
Visual Studio Code เป็นตัวแก้ไขโค้ดที่มีส่วนขยายต่อไปนี้:
- รหัสโรโบคอร์ป
- เซิร์ฟเวอร์ภาษากรอบงานหุ่นยนต์
- GitLens
- ส่วนขยายหลาม
GitHub Desktop จะทำให้การจัดการเวอร์ชันเสี่ยงต่อข้อผิดพลาดน้อยลง
โครงการนี้เป็นโอเพ่นซอร์สและได้รับอนุญาตภายใต้เงื่อนไขของ Apache License 2.0