созданиС ΡˆΡ‚Ρ€ΠΈΡ… ΠΊΠΎΠ΄Π° python

Как ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΡˆΡ‚Ρ€ΠΈΡ…-ΠΊΠΎΠ΄Ρ‹ Π² Π²Π°ΡˆΠΈΡ… PDF с Python

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Reportlab β€” ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΉ способ создания PDF-Ρ„Π°ΠΉΠ»ΠΎΠ² Π½Π° Python. НСдавно я Π·Π°ΠΌΠ΅Ρ‚ΠΈΠ», Ρ‡Ρ‚ΠΎ Π² Π½Π΅ΠΌ Π΅ΡΡ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π΄Π΅Π»Π°Ρ‚ΡŒ ΡˆΡ‚Ρ€ΠΈΡ…-ΠΊΠΎΠ΄Ρ‹. Π― ΡΠ»Ρ‹ΡˆΠ°Π» ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ QR-ΠΊΠΎΠ΄Ρ‹, Π½ΠΎ я Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π½Π΅ копался ΠΏΠΎΠ΄ одСялом, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π΅Ρ‰Π΅ ΠΎΠ½ ΠΌΠΎΠ³ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ. Π’ этом руководствС ΠΌΡ‹ рассмотрим Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡˆΡ‚Ρ€ΠΈΡ…-ΠΊΠΎΠ΄Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Reportlab. Если Ρƒ вас Π΅Ρ‰Π΅ Π½Π΅Ρ‚ Reportlab, Π·Π°ΠΉΠ΄ΠΈΡ‚Π΅ Π½Π° ΠΈΡ… сайт ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ Π΅Π³ΠΎ, ΠΏΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ ΡΡ‚Π°Ρ‚ΡŒΠ΅.

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΡˆΡ‚Ρ€ΠΈΡ…ΠΊΠΎΠ΄ΠΎΠ² Reportlab

Reportlab прСдоставляСт нСсколько Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² ΡˆΡ‚Ρ€ΠΈΡ…-ΠΊΠΎΠ΄ΠΎΠ²: code39 (Ρ‚.Π΅. ΠΊΠΎΠ΄ 3 ΠΈΠ· 9), code93, ΠΊΠΎΠ΄ 128, EANBC, QR ΠΈ USPS. Π― Ρ‚Π°ΠΊΠΆΠ΅ Π²ΠΈΠ΄Π΅Π» ΠΎΠ΄Π½ΠΎ ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ Β«Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ состояния», Π½ΠΎ я Π½Π΅ ΠΌΠΎΠ³ ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΊΠ°ΠΊ Π·Π°ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ. Под Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ ΠΈΠ· этих Ρ‚ΠΈΠΏΠΎΠ² Π΅ΡΡ‚ΡŒ ΠΏΠΎΠ΄Ρ‚ΠΈΠΏΡ‹, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚, Π Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ ΠΈΠ»ΠΈ ΠœΡƒΠ»ΡŒΡ‚ΠΈΡˆΠΈΡ€ΠΈΠ½Π°. МнС Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΠ²Π΅Π·Π»ΠΎ Π·Π°ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ MultiWidth Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с ΡˆΡ‚Ρ€ΠΈΡ…-ΠΊΠΎΠ΄ΠΎΠΌ code128, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ½ постоянно Π²Ρ‹Π΄Π°Π²Π°Π» ΠΌΠ½Π΅ ΠΎΡˆΠΈΠ±ΠΊΡƒ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π°, поэтому ΠΌΡ‹ просто ΠΏΡ€ΠΎΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΡƒΠ΅ΠΌ это. Если Π²Ρ‹ Π·Π½Π°Π΅Ρ‚Π΅, ΠΊΠ°ΠΊ это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ, Π½Π°ΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΌΠ½Π΅ Π² коммСнтариях ΠΈΠ»ΠΈ Ρ‡Π΅Ρ€Π΅Π· мою ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π½ΡƒΡŽ Ρ„ΠΎΡ€ΠΌΡƒ ΠΈ Π΄Π°ΠΉΡ‚Π΅ ΠΌΠ½Π΅ Π·Π½Π°Ρ‚ΡŒ. Π― обновлю ΡΡ‚Π°Ρ‚ΡŒΡŽ, Ссли ΠΊΡ‚ΠΎ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΌΠ½Π΅, ΠΊΠ°ΠΊ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ этот ΠΈΠ»ΠΈ чСтырСхсторонний ΡˆΡ‚Ρ€ΠΈΡ…-ΠΊΠΎΠ΄.

Π’ любом случаС, Π»ΡƒΡ‡ΡˆΠΈΠΉ способ Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ β€” это просто Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄. Π’ΠΎΡ‚ довольно простой ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

Π”Π°Π²Π°ΠΉΡ‚Π΅ разбСрСмся с этим Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ. Код39.Extended39 Π½Π° самом Π΄Π΅Π»Π΅ Π½Π΅ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Π½ΠΈΡ‡Π΅Π³ΠΎ, ΠΊΡ€ΠΎΠΌΠ΅ самого значСния. Π‘ Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, code39.Standard39, code93.Standard93 ΠΈ code128.Code128 ΠΈΠΌΠ΅ΡŽΡ‚ Π² основном ΠΎΠ΄ΠΈΠ½ ΠΈ Ρ‚ΠΎΡ‚ ΠΆΠ΅ API. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ barWidth, barHeight, Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ символы запуска / остановки ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Β«Ρ‚ΠΈΡ…ΠΈΠ΅Β» Π·ΠΎΠ½Ρ‹. ΠœΠΎΠ΄ΡƒΠ»ΡŒ ΡˆΡ‚Ρ€ΠΈΡ…-ΠΊΠΎΠ΄Π° usps прСдоставляСт Π΄Π²Π° Ρ‚ΠΈΠΏΠ° ΡˆΡ‚Ρ€ΠΈΡ…-ΠΊΠΎΠ΄Π°: FIM ΠΈ POSTNET. FIM ΠΈΠ»ΠΈ Faceing ID Marks ΠΊΠΎΠ΄ΠΈΡ€ΡƒΡŽΡ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½Ρƒ Π±ΡƒΠΊΠ²Ρƒ (AD), которая Π»ΠΈΡ‡Π½ΠΎ ΠΌΠ½Π΅ Π½Π΅ показалась ΠΎΡ‡Π΅Π½ΡŒ интСрСсной. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ я просто ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽ Π²Π΅Ρ€ΡΠΈΡŽ POSTNET, которая Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ довольно Π·Π½Π°ΠΊΠΎΠΌΠ° людям Π² Π‘ΠΎΠ΅Π΄ΠΈΠ½Π΅Π½Π½Ρ‹Ρ… Π¨Ρ‚Π°Ρ‚Π°Ρ…, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½Π° отобраТаСтся Π²Π½ΠΈΠ·Ρƒ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚ΠΎΠ². POSTNET ΠΊΠΎΠ΄ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΏΠΎΡ‡Ρ‚ΠΎΠ²Ρ‹ΠΉ индСкс!

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡˆΡ‚Ρ€ΠΈΡ… ΠΊΠΎΠ΄Π° python

Viivakoodi (barcode in Suomi) is the fork of pyBarcode project.

This library provides a simple way to create barcodes using only the Python standardlib. The barcodes where created as SVG objects.

Make sure you have setuptools/distribute installed.

Unpack the downloaded file, cd into the viivakoodi directory and run python setup.py install. Or just copy the barcode dir somewhere in your PYTHONPATH.

The best way is to use pip: pip install viivakoodi.

EAN-8, EAN-13, EAN-14, UPC-A, JAN, ISBN-10, ISBN-13, ISSN, Code 39, Code 128, PZN

Now open ean13_barcode.[svg|png] in a graphic app or simply in your browser and see the created barcode. That’s it.

v0.8:Code 128 added. Data for charsets and bars moved to subpackage barcode.charsets.
v0.7:Fixed some issues with fontsize and fontalignment. Added Python 3 support. It’s not well tested yet, but the tests run without errors with Python 3.3. Commandline script added.
v0.6:Changed save and write methods to take the options as a dict not as keyword arguments (fix this in your code). Added option to left align the text under the barcode. Fixed bug with EAN13 generation.
v0.5.0:Added new generate function to do all generation in one step. Moved writer from a subpackage to a module (this breaks some existing code). UPC is now rendered as real UPC, not as EAN13 with the leading «0».
v0.4.3:Fixed bug in new write method (related to PIL) and updated docs.
v0.4.2:Added write method to support file like objects as target.
v0.4.1:Bugfix release. Removed redundancy in input validation. EAN8 was broken. It now works as expected.
v0.4:Removed **options from writers __init__ method. These options never had effect. They were always overwritten by default_options. New config option available: text_distance (the distance between barcode and text).
v0.4b2:Basic documentation included. The barcode object now has a new attribute called raw to have the rendered output without saving to disk.
v0.4b1:Support for rendering barcodes as images is implemented. PIL is required to use it.
v0.3:Compression for SVG output now works.
v0.3b1:Writer API has changed for simple adding new (own) writers. SVG output is now generated with xml.dom module instead of stringformatting (makes it more robust).
v0.2.1:API of render changed. Now render takes keyword arguments instead of a dict.
v0.2:More tests added.
v0.1:First release.

About

Barcode generator for Python. Fork of pyBarcode project.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π‘ Python ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Π΅ΠΌ Π»ΡŽΠ±Ρ‹Π΅ ΡˆΡ‚Ρ€ΠΈΡ…- ΠΈ QR‑коды

созданиС ΡˆΡ‚Ρ€ΠΈΡ… ΠΊΠΎΠ΄Π° python. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ созданиС ΡˆΡ‚Ρ€ΠΈΡ… ΠΊΠΎΠ΄Π° python. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ созданиС ΡˆΡ‚Ρ€ΠΈΡ… ΠΊΠΎΠ΄Π° python. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ созданиС ΡˆΡ‚Ρ€ΠΈΡ… ΠΊΠΎΠ΄Π° python. Π€ΠΎΡ‚ΠΎ созданиС ΡˆΡ‚Ρ€ΠΈΡ… ΠΊΠΎΠ΄Π° python

Π¨Ρ‚Ρ€ΠΈΡ…-ΠΊΠΎΠ΄ β€” это ΠΌΠ΅Ρ‚ΠΎΠ΄ прСдставлСния Π΄Π°Π½Π½Ρ‹Ρ… Π² Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΈ ΠΌΠ°ΡˆΠΈΠ½ΠΎΡ‡ΠΈΡ‚Π°Π΅ΠΌΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠ΅, ΠΎΠ½ состоит ΠΈΠ· полос ΠΈ ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠ². БСгодня ΠΌΡ‹ Π²ΠΈΠ΄ΠΈΠΌ ΡˆΡ‚Ρ€ΠΈΡ…-ΠΊΠΎΠ΄Ρ‹ ΠΏΠΎΠ²ΡΡŽΠ΄Ρƒ, Ρ‡Π°Ρ‰Π΅ всСго Π½Π° ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π°Ρ… Π² супСрмаркСтах.

Π¨Ρ‚Ρ€ΠΈΡ…-ΠΊΠΎΠ΄Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ ΡΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ оптичСского сканСра ΡˆΡ‚Ρ€ΠΈΡ…-ΠΊΠΎΠ΄Π°, Π½ΠΎ здСсь, для Π½Π°Ρ‡Π°Π»Π°, напишСм скрипт Python для считывания ΠΈ дСкодирования ΡˆΡ‚Ρ€ΠΈΡ…-ΠΊΠΎΠ΄ΠΎΠ² с рисунков, Π³Π΄Π΅ ΠΎΠ½ΠΈ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½Ρ‹.

Для выполнСния описанных здСсь ΡƒΠΏΡ€Π°ΠΆΠ½Π΅Π½ΠΈΠΉ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π½ΡƒΠΆΠ½Ρ‹Π΅ Π½Π°ΠΌ зависимости:

Как ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΡΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚Π΅Π»ΡŒ ΡˆΡ‚Ρ€ΠΈΡ…-ΠΊΠΎΠ΄Π° Π½Π° Python

Как Ρ‚ΠΎΠ»ΡŒΠΊΠΎ зависимости Π±ΡƒΠ΄ΡƒΡ‚ установлСны, ΠΎΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ Π½ΠΎΠ²Ρ‹ΠΉ Ρ„Π°ΠΉΠ» Python ΠΈ ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΡƒΠΉΡ‚Π΅ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ для считыватСля:

Π― Ρ€Π°Π·Π±ΠΈΠ» всю Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΏΠΎ функциям ΠΈ пСрвая функция, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΡ‹ обсудим, ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ:

Π—Π°Ρ‚Π΅ΠΌ ΠΌΡ‹ ΠΏΠ΅Ρ€Π΅Π±ΠΈΡ€Π°Π΅ΠΌ всС ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½Π½Ρ‹Π΅ ΡˆΡ‚Ρ€ΠΈΡ…-ΠΊΠΎΠ΄Ρ‹, рисуСм ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊ Π²ΠΎΠΊΡ€ΡƒΠ³ ΡˆΡ‚Ρ€ΠΈΡ…-ΠΊΠΎΠ΄Π° ΠΈ ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅ΠΌ Ρ‚ΠΈΠΏ ΠΈ Π΄Π°Π½Π½Ρ‹Π΅ ΡˆΡ‚Ρ€ΠΈΡ…-ΠΊΠΎΠ΄Π°. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΡΡΠ½ΠΈΡ‚ΡŒ ΡΠΈΡ‚ΡƒΠ°Ρ†ΠΈΡŽ, Π²ΠΎΡ‚ ΠΊΠ°ΠΊ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ выглядСл, Ссли ΠΌΡ‹ Π΅Π³ΠΎ распСчатали:

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, функция pyzbar.decode() Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π΄Π°Π½Π½Ρ‹Π΅, содСрТащиС ΡˆΡ‚Ρ€ΠΈΡ…-ΠΊΠΎΠ΄, Ρ‚ΠΈΠΏ ΡˆΡ‚Ρ€ΠΈΡ…-ΠΊΠΎΠ΄Π°, Π° Ρ‚Π°ΠΊΠΆΠ΅ Ρ‚ΠΎΡ‡ΠΊΠΈ располоТСния Π² Π²ΠΈΠ΄Π΅ ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠ° ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠ°.

Π­Ρ‚ΠΎ ΠΏΠΎΠ΄Π²ΠΎΠ΄ΠΈΡ‚ нас ΠΊ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΡ‹ использовали, draw_barcode() :

Ну Π½Π°ΠΊΠΎΠ½Π΅Ρ† Ρ‚ΠΎ, ΠΎΠ½ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, содСрТащСС нарисованныС ΡˆΡ‚Ρ€ΠΈΡ…-ΠΊΠΎΠ΄Ρ‹. Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π΄Π°Π²Π°ΠΉΡ‚Π΅ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡΡ этими функциями для Π½Π°ΡˆΠΈΡ… ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ:

Π’ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ„Π°ΠΉΠ» ΠΌΡ‹ Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅ΠΌ Π΅Π³ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ cv2.imread() ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Ρ€Π°Π½Π΅Π΅ ΠΎΠ±ΡΡƒΠΆΠ΄Π°Π²ΡˆΡƒΡŽΡΡ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ decode() для дСкодирования ΡˆΡ‚Ρ€ΠΈΡ…-ΠΊΠΎΠ΄ΠΎΠ², Π° Π·Π°Ρ‚Π΅ΠΌ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ фактичСскоС ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅.

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ скрипт Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΡ‚ QR-ΠΊΠΎΠ΄Ρ‹, ΠΈ это Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ, Π½ΠΎ для получСния Π±ΠΎΠ»Π΅Π΅ Ρ‚ΠΎΡ‡Π½Ρ‹Ρ… Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² Ρ‡ΠΈΡ‚Π°ΠΉΡ‚Π΅ Π²Ρ‚ΠΎΡ€ΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ этой Π·Π°ΠΌΠ΅Ρ‚ΠΊΠΈ.

Когда я Π·Π°ΠΏΡƒΡΠΊΠ°ΡŽ сцСнарий, ΠΎΠ½ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈ ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅Ρ‚ Π΅Π³ΠΎ Ρ‚ΠΈΠΏ ΠΈ Π΄Π°Π½Π½Ρ‹Π΅, Π½Π°ΠΆΠΌΠΈΡ‚Π΅ Π»ΡŽΠ±ΡƒΡŽ ΠΊΠ»Π°Π²ΠΈΡˆΡƒ, ΠΈ Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, Π²ΠΎΡ‚ ΠΌΠΎΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚:

Π’ΠΎΡ‚ послСднСС ΠΏΠΎΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅:
созданиС ΡˆΡ‚Ρ€ΠΈΡ… ΠΊΠΎΠ΄Π° python. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ созданиС ΡˆΡ‚Ρ€ΠΈΡ… ΠΊΠΎΠ΄Π° python. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ созданиС ΡˆΡ‚Ρ€ΠΈΡ… ΠΊΠΎΠ΄Π° python. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ созданиС ΡˆΡ‚Ρ€ΠΈΡ… ΠΊΠΎΠ΄Π° python. Π€ΠΎΡ‚ΠΎ созданиС ΡˆΡ‚Ρ€ΠΈΡ… ΠΊΠΎΠ΄Π° python

Π­Ρ‚ΠΎ Π·Π΄ΠΎΡ€ΠΎΠ²ΠΎ, Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Ρƒ вас Π΅ΡΡ‚ΡŒ ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΉ инструмСнт для создания собствСнного сканСра ΡˆΡ‚Ρ€ΠΈΡ…-ΠΊΠΎΠ΄Π° Π½Π° Python. Π― знаю, Ρ‡Ρ‚ΠΎ Π²Ρ‹ всС Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ прямо с ΠΊΠ°ΠΌΠ΅Ρ€Ρ‹ ΠΈ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΈΠ» ΠΊΠΎΠ΄ для считывания ΠΈ обнаруТСния ΡˆΡ‚Ρ€ΠΈΡ…-ΠΊΠΎΠ΄Π° с ΠΊΠ°ΠΌΠ΅Ρ€Ρ‹ Π² Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. Π’ΠΎΡ‚ ΠΎΠ½:

Π’Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ Π·Π²ΡƒΠΊΠΎΠ²ΠΎΠΉ сигнал ΠΏΡ€ΠΈ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΈΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡˆΡ‚Ρ€ΠΈΡ…-ΠΊΠΎΠ΄Π°, Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ Π² супСрмаркСтах, ΠΎΠ·Π½Π°ΠΊΠΎΠΌΡŒΡ‚Π΅ΡΡŒ с руководством ΠΏΠΎ Π²ΠΎΡΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΡŽ Π·Π²ΡƒΠΊΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠΌΠΎΡ‡ΡŒ Π²Π°ΠΌ Π² этом.

Как ΡΠ³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ QR-ΠΊΠΎΠ΄ Π² Python

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ QR-ΠΊΠΎΠ΄Π°

Π’ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, Π΄Π°Π²Π°ΠΉΡ‚Π΅ Π½Π°Ρ‡Π½Π΅ΠΌ с создания QR-ΠΊΠΎΠ΄ΠΎΠ², это Π² Ρ†Π΅Π»ΠΎΠΌ ΠΎΡ‡Π΅Π½ΡŒ просто ΠΏΡ€ΠΈ Π½Π°Π»ΠΈΡ‡ΠΈΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ qrcode :

Π­Ρ‚ΠΎ сгСнСрируСт Π½ΠΎΠ²Ρ‹ΠΉ Ρ„Π°ΠΉΠ» изобраТСния Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ с ΠΈΠΌΠ΅Π½Π΅ΠΌ Β«waksoft.susu.ru.pngΒ», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ содСрТит ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ QR-ΠΊΠΎΠ΄Π° ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… (Π² Π΄Π°Π½Π½ΠΎΠΌ случаС URL этого Π²Π΅Π±-сайта), Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Ρ‚Π°ΠΊ:
созданиС ΡˆΡ‚Ρ€ΠΈΡ… ΠΊΠΎΠ΄Π° python. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ созданиС ΡˆΡ‚Ρ€ΠΈΡ… ΠΊΠΎΠ΄Π° python. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ созданиС ΡˆΡ‚Ρ€ΠΈΡ… ΠΊΠΎΠ΄Π° python. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ созданиС ΡˆΡ‚Ρ€ΠΈΡ… ΠΊΠΎΠ΄Π° python. Π€ΠΎΡ‚ΠΎ созданиС ΡˆΡ‚Ρ€ΠΈΡ… ΠΊΠΎΠ΄Π° python

Π˜Ρ‚Π°ΠΊ, ΠΏΡ€ΠΈ создании класса QRCode ΠΌΡ‹ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ вСрсии, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ прСдставляСт собой Ρ†Π΅Π»ΠΎΠ΅ число ΠΎΡ‚ 1 Π΄ΠΎ 40, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΡƒΠ΅Ρ‚ Ρ€Π°Π·ΠΌΠ΅Ρ€ изобраТСния QR-ΠΊΠΎΠ΄Π° (1 β€” малСнький, ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° 21Γ—21, 40 β€” ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° 185Γ—185), Π½ΠΎ это Π±ΡƒΠ΄Π΅Ρ‚ пСрСзаписано, ΠΊΠΎΠ³Π΄Π° Π΄Π°Π½Π½Ρ‹Π΅ Π½Π΅ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‚ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΌΡƒ Π²Π°ΠΌΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ€Ρƒ. Π’ нашСм случаС ΠΎΠ½ автоматичСски ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΡƒΠ΅Ρ‚ΡΡ Π΄ΠΎ вСрсии 3.

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ box_size управляСт количСством пиксСлСй Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠ΅ QR-ΠΊΠΎΠ΄Π°, Ρ‚ΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ Π³Ρ€Π°Π½ΠΈΡ†Π° опрСдСляСт, сколько ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠΎΠ² Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΈΠΌΠ΅Ρ‚ΡŒ Ρ‚ΠΎΠ»Ρ‰ΠΈΠ½Ρƒ.

И Ρ„ΠΎΡ€ΠΌΠ° изобраТСния Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½Π°, Π° Π½Π΅ 21Γ—21:

Π§ΠΈΡ‚Π°Π΅ΠΌ QR-ΠΊΠΎΠ΄

Π₯ΠΎΡ€ΠΎΡˆΠΎ, ΠΎΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ Π½ΠΎΠ²Ρ‹ΠΉ Ρ„Π°ΠΉΠ» Python ΠΈ слСдуйтС Π·Π° ΠΌΠ½ΠΎΠΉ, Π΄Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Π΅ΠΌ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Ρ‚ΠΎ сгСнСрированноС ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅:

К ΡΡ‡Π°ΡΡ‚ΡŒΡŽ для нас, OpenCV ΡƒΠΆΠ΅ ΠΈΠΌΠ΅Π΅Ρ‚ встроСнный Π΄Π΅Ρ‚Π΅ΠΊΡ‚ΠΎΡ€ QR-ΠΊΠΎΠ΄Π°:

Π£ нас Π΅ΡΡ‚ΡŒ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈ Π΄Π΅Ρ‚Π΅ΠΊΡ‚ΠΎΡ€, Π΄Π°Π²Π°ΠΉΡ‚Π΅ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠΌ ΠΈ Ρ€Π°ΡΡˆΠΈΡ„Ρ€ΡƒΠ΅ΠΌ эти Π΄Π°Π½Π½Ρ‹Π΅:

Ѐункция detectAndDecode() ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π² качСствС Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡ€ΡƒΠ΅Ρ‚ Π΅Π³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ ΠΈΠ· 3 Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ: Π΄Π°Π½Π½Ρ‹Π΅, Π΄Π΅ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ ΠΈΠ· QR-ΠΊΠΎΠ΄Π°, Π²Ρ‹Ρ…ΠΎΠ΄Π½ΠΎΠΉ массив Π²Π΅Ρ€ΡˆΠΈΠ½ Π½Π°ΠΉΠ΄Π΅Π½Π½ΠΎΠ³ΠΎ Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅Ρ…ΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠ° QR-ΠΊΠΎΠ΄Π° ΠΈ Π²Ρ‹Ρ…ΠΎΠ΄Π½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, содСрТащСС исправлСнный ΠΈ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ Π² Π΄Π²ΠΎΠΈΡ‡Π½ΡƒΡŽ Ρ„ΠΎΡ€ΠΌΡƒ QR-ΠΊΠΎΠ΄.

НаконСц, Π΄Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΠΎΠΊΠ°ΠΆΠ΅ΠΌ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈ Π²Ρ‹ΠΉΠ΄Π΅ΠΌ ΠΏΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ клавиши:

ПослС запуска Ρ€Π°ΡΠΏΠ΅Ρ‡Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚ΡΡ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅:

И ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅:

Как Π²ΠΈΠ΄ΠΈΡ‚Π΅, синиС Π»ΠΈΠ½ΠΈΠΈ нарисованы Ρ‚ΠΎΡ‡Π½ΠΎ Π² Π³Ρ€Π°Π½ΠΈΡ†Π°Ρ… QR-ΠΊΠΎΠ΄Π°. ΠžΡ‚Π»ΠΈΡ‡Π½ΠΎ, ΠΌΡ‹ Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΠ»ΠΈ с этим скриптом, ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Π΅Π³ΠΎ с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΈ посмотритС свои Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹!

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ это идСально ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ для QR-ΠΊΠΎΠ΄ΠΎΠ², Π° Π½Π΅ для ΡˆΡ‚Ρ€ΠΈΡ…-ΠΊΠΎΠ΄ΠΎΠ².

Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΈ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ QR-ΠΊΠΎΠ΄Ρ‹ Π² Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π²Π΅Π±-ΠΊΠ°ΠΌΠ΅Ρ€Ρ‹ (ΠΈ я ΡƒΠ²Π΅Ρ€Π΅Π½, Ρ‡Ρ‚ΠΎ Π²Ρ‹ это Π΄Π΅Π»Π°Π΅Ρ‚Π΅), Π²ΠΎΡ‚ ΠΊΠΎΠ΄ для этого:

ΠžΡ‚Π»ΠΈΡ‡Π½ΠΎ, я Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΠ» ΠΈ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ Π² свои собствСнныС прилоТСния!

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

ReportLab – Как ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΡˆΡ‚Ρ€ΠΈΡ…-ΠΊΠΎΠ΄Ρ‹ Π² своих PDF с Python

ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ практичСскиС, Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Π΅ Π½Π°Π²Ρ‹ΠΊΠΈ Python Π½Π° Π½Π°ΡˆΠΈΡ… рСсурсах ΠΈ ΠΏΡƒΡ‚ΠΈ

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ReportLab – ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΉ способ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ PDF Π² Python. НСдавно я Π·Π°ΠΌΠ΅Ρ‚ΠΈΠ», Ρ‡Ρ‚ΠΎ Ρƒ Π½Π΅Π³ΠΎ Π΅ΡΡ‚ΡŒ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ‚ΡŒ Π΄Π΅Π»Π°Ρ‚ΡŒ ΡˆΡ‚Ρ€ΠΈΡ…-ΠΊΠΎΠ΄Ρ‹. Π― ΡΠ»Ρ‹ΡˆΠ°Π» ΠΎΠ± этом, имСя Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ QR-ΠΊΠΎΠ΄Ρ‹, Π½ΠΎ я Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π½Π΅ Π²Ρ‹Ρ€Ρ‹Π» ΠΏΠΎΠ΄ ΠΊΡ€Ρ‹ΡˆΠΊΠ°ΠΌΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π΅Ρ‰Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ. Π’ этом руководствС ΠΌΡ‹ посмотрим Π½Π° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· ΡˆΡ‚Ρ€ΠΈΡ…-ΠΊΠΎΠ΄ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ReportLab. Если Ρƒ вас Π΅Ρ‰Π΅ Π½Π΅Ρ‚ ReportLab, ΠΏΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ ΠΊ ΠΈΡ… Π‘Π°ΠΉΡ‚ ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π΅Π³ΠΎ, ΠΏΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΏΡ€Ρ‹Π³Π°Ρ‚ΡŒ Π² ΡΡ‚Π°Ρ‚ΡŒΡŽ.

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΡˆΡ‚Ρ€ΠΈΡ…-ΠΊΠΎΠ΄ΠΎΠ² ReportLab

REPORTLAB обСспСчиваСт нСсколько Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² ΡˆΡ‚Ρ€ΠΈΡ…-ΠΊΠΎΠ΄ΠΎΠ²: Code39 (I.E. Код 3 ΠΈΠ· 9), Code93, ΠΊΠΎΠ΄ 128, EANBC, QR ΠΈ USPS. Π― Π²ΠΈΠ΄Π΅Π», ΠΊΠ°ΠΊ ΠΎΠ΄ΠΈΠ½ ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ Β«FourstateΒ», Π½ΠΎ я Π½Π΅ ΠΌΠΎΠ³ ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΊΠ°ΠΊ Π΄ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ Π΄ΠΎ Ρ€Π°Π±ΠΎΡ‚Ρ‹. Под Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ ΠΈΠ· этих Ρ‚ΠΈΠΏΠΎΠ² ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ нСсколько Ρ‚ΠΈΠΏΠΎΠ², Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ стандартный, Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ ΠΈΠ»ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ. МнС Π½Π΅ Π±Ρ‹Π»ΠΎ ΠΏΠΎΠ²Π΅Π·Π»ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΡƒΡŽ Ρ€Π°Π±ΠΎΡ‚Ρƒ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΊΠΎΠ΄Π° Code128, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Π» Π΄Π°Ρ‚ΡŒ ΠΌΠ½Π΅ ΠΎΡˆΠΈΠ±ΠΊΡƒ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π°, поэтому ΠΌΡ‹ просто ΠΏΡ€ΠΎΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΡƒΠ΅ΠΌ этому. Если Π²Ρ‹ Π·Π½Π°Π΅Ρ‚Π΅, ΠΊΠ°ΠΊ это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ, ΠΏΠΈΠ½Π³ мСня Π² коммСнтариях ΠΈΠ»ΠΈ Ρ‡Π΅Ρ€Π΅Π· мою ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π½ΡƒΡŽ Ρ„ΠΎΡ€ΠΌΡƒ ΠΈ Π΄Π°ΠΉΡ‚Π΅ ΠΌΠ½Π΅ Π·Π½Π°Ρ‚ΡŒ. Π― ΠΎΠ±Π½ΠΎΠ²ΠΈΠΌ ΡΡ‚Π°Ρ‚ΡŒΡŽ, Ссли ΠΊΡ‚ΠΎ-Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΌΠ½Π΅, ΠΊΠ°ΠΊ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ это ΠΈΠ»ΠΈ чСтырСхстоТный ΡˆΡ‚Ρ€ΠΈΡ…-ΠΊΠΎΠ΄.

Π’ΠΎ всяком случаС, Π»ΡƒΡ‡ΡˆΠΈΠΉ способ ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ просто Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠ°ΠΊΠΎΠΉ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ ΠΊΠΎΠ΄. Π’ΠΎΡ‚ довольно прямой ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

Π”Π°Π²Π°ΠΉΡ‚Π΅ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ сломаСмся. CODE39.Extended39 Π½Π° самом Π΄Π΅Π»Π΅ Π½Π΅ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎ Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Π°ΠΌΠΈ самого значСния. Π‘ Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, Code39.Standard39, Code93.Standard93 ΠΈ Code128.code128 всС ΠΈΠΌΠ΅ΡŽΡ‚ Π² основном ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡƒΡŽ API. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π±Π°Ρ€ΠΎΠ²Π½ΡƒΡŽ Π±Π°Ρ€ΠΎΠ², Barheight, Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ символы Start/Stop ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Β«Ρ‚ΠΈΡ…ΠΈΠ΅Β» Π·ΠΎΠ½Ρ‹. ΠœΠΎΠ΄ΡƒΠ»ΡŒ ΡˆΡ‚Ρ€ΠΈΡ…-ΠΊΠΎΠ΄Π° USPS обСспСчиваСт Π΄Π²Π° Ρ‚ΠΈΠΏΠ° ΡˆΡ‚Ρ€ΠΈΡ…-ΠΊΠΎΠ΄Π°: fim ΠΈ postnet. FIM ΠΈΠ»ΠΈ ΠΎΠ±Π»ΠΈΡ†ΠΎΠ²ΠΎΡ‡Π½Ρ‹Π΅ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ Π·Π½Π°ΠΊΠΈ ΠΊΠΎΠ΄ΠΈΡ€ΡƒΠ΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½Ρƒ Π±ΡƒΠΊΠ²Ρƒ (A-D), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ я Π»ΠΈΡ‡Π½ΠΎ Π½Π΅ нашСл это ΠΎΡ‡Π΅Π½ΡŒ интСрСсно. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ я просто ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽ Π²Π΅Ρ€ΡΠΈΡŽ PostNet, которая Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ довольно Π·Π½Π°ΠΊΠΎΠΌΠΎΠΉ людям Π² Π‘ΠΎΠ΅Π΄ΠΈΠ½Π΅Π½Π½Ρ‹Ρ… Π¨Ρ‚Π°Ρ‚Π°Ρ…, ΠΊΠ°ΠΊ ΠΎΠ½ΠΎ появляСтся Π½Π° Π΄Π½Π΅ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚ΠΎΠ². PostNet ΠΊΠΎΠ΄ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΏΠΎΡ‡Ρ‚ΠΎΠ²Ρ‹ΠΉ индСкс!

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Ρ‚Ρ€ΠΈ ΡˆΡ‚Ρ€ΠΈΡ…-ΠΊΠΎΠ΄Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Π΄Ρ€ΡƒΠ³ΠΎΠ΅ API, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π°Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ… Π½Π° PDF, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ я ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ» Ρ‡Π΅Ρ€Π΅Π· Stackoverflow ΠžΡ‚ΠΊΠ°Π· Π’ основном Π²Ρ‹ создаСтС РисованиС ΠžΠ±ΡŠΠ΅ΠΊΡ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€Π°, Π° Π·Π°Ρ‚Π΅ΠΌ Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ ΡˆΡ‚Ρ€ΠΈΡ…-ΠΊΠΎΠ΄ Π½Π° Ρ‡Π΅Ρ€Ρ‚Π΅ΠΆ. НаконСц Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ RenderPdf ΠœΠΎΠ΄ΡƒΠ»ΡŒ для размСщСния рисунка Π½Π° PDF. Π­Ρ‚ΠΎ довольно Π·Π°ΠΏΡƒΡ‚Π°Π½ΠΎ, Π½ΠΎ это Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ довольно Ρ…ΠΎΡ€ΠΎΡˆΠΎ. ΠšΠΎΠ΄Ρ‹ EANBC – это Ρ‚Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅ Π½Π° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΈΠ·Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π°Ρ…, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ Ρ‚ΠΊΠ°Π½Π΅Π²Ρ‹Π΅ ΠΊΠΎΡ€ΠΎΠ±ΠΊΠΈ.

Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΊΠΎΠ΄Π° Π²Ρ‹ΡˆΠ΅, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠΊΠ°Ρ‡Π°Ρ‚ΡŒ PDF здСсь ΠžΡ‚ΠΊΠ°Π·

Π£ΠΏΠ°ΠΊΠΎΠ²ΠΊΠ°

На этом этапС Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Π² состоянии Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΈ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ свои собствСнныС ΡˆΡ‚Ρ€ΠΈΡ…-ΠΊΠΎΠ΄Ρ‹ Π² своих PDF. ReportLab довольно ΡƒΠ΄ΠΎΠ±Π½ΠΎ, ΠΈ я надСюсь, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π½Π°ΠΉΠ΄Π΅Ρ‚Π΅ этот Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ инструмСнт, ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΉ Π² Π²Π°ΡˆΠΈΡ… усилиях.

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ Ρ‡Ρ‚Π΅Π½ΠΈΠ΅

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

РусскиС Π‘Π»ΠΎΠ³ΠΈ

python Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ ΡˆΡ‚Ρ€ΠΈΡ…-ΠΊΠΎΠ΄

БущСствуСт мноТСство сторонних Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ для Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ ΡˆΡ‚Ρ€ΠΈΡ…-ΠΊΠΎΠ΄ΠΎΠ² Π½Π° Python. Π― ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Π» нСсколько часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ ΠΈ ΠΊΡ€Π°Ρ‚ΠΊΠΎ рассказал ΠΎ своих чувствах.
Π‘Π½Π°Ρ‡Π°Π»Π° ΠΏΠΎΠ·Π²ΠΎΠ»ΡŒΡ‚Π΅ ΠΌΠ½Π΅ Ρ€Π°ΡΡΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°Ρ…. Если Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ python3.x, рСкомСндуСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ pyStrich.

pyBarcode

Π‘ΠΎΠ»ΡŒΡˆΠ΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ ΠΈ Π»Π΅Π³ΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ
ΠŸΡ€ΡΠΌΠ°Ρ установка Ρ‡Π΅Ρ€Π΅Π· pip pip install pyBarcode
Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΎΠ΄Π° EAN13

Π’Ρ‹ΡˆΠ΅ΡƒΠΏΠΎΠΌΡΠ½ΡƒΡ‚Ρ‹Π΅ Π΄Π²Π° ΠΌΠ΅Ρ‚ΠΎΠ΄Π° эквивалСнтны, эффСкт ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ.
созданиС ΡˆΡ‚Ρ€ΠΈΡ… ΠΊΠΎΠ΄Π° python. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ созданиС ΡˆΡ‚Ρ€ΠΈΡ… ΠΊΠΎΠ΄Π° python. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ созданиС ΡˆΡ‚Ρ€ΠΈΡ… ΠΊΠΎΠ΄Π° python. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ созданиС ΡˆΡ‚Ρ€ΠΈΡ… ΠΊΠΎΠ΄Π° python. Π€ΠΎΡ‚ΠΎ созданиС ΡˆΡ‚Ρ€ΠΈΡ… ΠΊΠΎΠ΄Π° python

Но нСдостатки pyBarcode Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Ρ‹, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈ ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹ΠΉ символы EAN13 Π½Π΅ ΠΏΡ€ΠΎΡ€ΠΈΡΠΎΠ²Ρ‹Π²Π°ΡŽΡ‚ΡΡ.

ReportLab

pip install pip install reportlab
ΡƒΠ΄ΠΎΠ±Π΅Π½ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с PDF-Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ, Π²Ρ‹Π²ΠΎΠ΄Π° ΡˆΡ‚Ρ€ΠΈΡ…-ΠΊΠΎΠ΄Π° Π² PDF-Ρ„Π°ΠΉΠ» ΠΈ прямой Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΊΠΎΠ΄Π°.

Π­Ρ„Ρ„Π΅ΠΊΡ‚ ΠΏΠΎΠΊΠ°Π·Π°Π½ Π½Π° рисункС Π½ΠΈΠΆΠ΅, ΡΠΎΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ EAN8 ΠΈ EAN13 Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π½Π΅ сбалансировано.
созданиС ΡˆΡ‚Ρ€ΠΈΡ… ΠΊΠΎΠ΄Π° python. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ созданиС ΡˆΡ‚Ρ€ΠΈΡ… ΠΊΠΎΠ΄Π° python. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ созданиС ΡˆΡ‚Ρ€ΠΈΡ… ΠΊΠΎΠ΄Π° python. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ созданиС ΡˆΡ‚Ρ€ΠΈΡ… ΠΊΠΎΠ΄Π° python. Π€ΠΎΡ‚ΠΎ созданиС ΡˆΡ‚Ρ€ΠΈΡ… ΠΊΠΎΠ΄Π° python

huBarcode

НС ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ python3.x, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€Π΅ΠΊΡ€Π°Ρ‰Π΅Π½Π° Ρ‡Π΅Ρ€Π΅Π· 13 Π»Π΅Ρ‚, Π·Π°ΠΌΠ΅Π½Π΅Π½Π° Π½Π° pyStrich
GitHub:https://github.com/hudora/huBarcode
python setup.py install

pyStrich

GitHub:https://github.com/mmulqueen/pyStrich
ΠΌΠΎΠΆΠ½ΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ pip pip install pyStrich

Π­Ρ„Ρ„Π΅ΠΊΡ‚ ΠΏΠΎΠΊΠ°Π·Π°Π½ Π½Π° рисункС.
созданиС ΡˆΡ‚Ρ€ΠΈΡ… ΠΊΠΎΠ΄Π° python. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ созданиС ΡˆΡ‚Ρ€ΠΈΡ… ΠΊΠΎΠ΄Π° python. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ созданиС ΡˆΡ‚Ρ€ΠΈΡ… ΠΊΠΎΠ΄Π° python. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ созданиС ΡˆΡ‚Ρ€ΠΈΡ… ΠΊΠΎΠ΄Π° python. Π€ΠΎΡ‚ΠΎ созданиС ΡˆΡ‚Ρ€ΠΈΡ… ΠΊΠΎΠ΄Π° python

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *