Yazıcıdan Çıktı Alma

Merhaba ;
Yazıcıya dosya göndermek için nasıl bir yok izlemeliyim
kullanıcıdan verileri aldırrıyorum dosyaya kaydediyorum fakat yazıcıdan çıktısını aldıramadım.Yardımcı oluursanız sevinirim

Merhaba, öncelikle aşağıdaki linkleri sizinle bir paylaşayım.


https://pythonhosted.org/python-printer-escpos/
http://timgolden.me.uk/python/win32_how_do_i/print.html

Yukarıda paylaştığım linklerin ilkinde şöyle bir cevap var:

import os

os.startfile("C://Users//TestFile.txt", "print")

Yukarıdaki yöntem sadece Windows için geçerli.
Cevap adresi: https://stackoverflow.com/a/22550163

1 Like

3 gündür araştırıyorum os.startfile komutunda windows 1155 hatası veriyor :frowning:
zebra barkod yazcısı için deneme yapıyorum

# coding=utf-8
import os,datetime,sys
tarih=datetime.datetime.now()
ac=open("C:/Users/pc/Desktop/zebra.ykss","w")
alici=raw_input("Alici : ")
Adres1=raw_input("adres Giriniz :")
Adres2=raw_input("Adres Giriniz :")
ilce=raw_input("Ilce Giriniz :")
Tel=raw_input("Telno Giriniz :")
fiyat=raw_input("Ucret Giriniz :")
giris=ac.write("""
N
FK
FS
Q812,32+0
Q812
S2
D10
ZT
A020,250,3,4,1,1,N,"ALICI"
A020,470,3,4,1,1,N,"TAHSILAT"
A056,83,0,3,1,1,N,"GONDERICI:"
A200,83,0,3,1,1,N,"deneme"
A450,3,0,3,1,1,N,"{}"
A020,25,0,3,2,2,N,"YKselfservis"
A360,25,0,3,2,3,N,"TAHSILATLI GOND."
A056,120,0,3,1,1,N,"ADI   :{}"
A056,158,0,3,1,1,N,"ADRES :{}"
A056,186,0,3,1,1,N,"{}"
A056,214,0,3,1,1,N,"{}"
A056,265,0,3,1,1,N,"TEL   : {}"
A056,305,0,3,1,1,N,"šRšN --> SELF SERVICE"
A056,330,0,3,1,1,N,""
A056,355,0,3,1,1,N,""
A056,383,0,3,1,1,N,"DOSYA POSET NO      : "
A056,405,0,3,1,1,N,"FATURA NO           : 408723"
A056,427,0,3,1,1,N,"IRSALIYE NO         : 408723"
A056,457,0,3,1,1,N,"TAH.ED. URUN BEDELI : {}"
A056,485,0,3,1,1,N,"TAHSILAT TIPI       : Nakit"
A565,545,3,4,3,1,N,""
B640,608,3,1,3,4,130,B,"92944504"
A056,520,0,3,2,2,N,"92944504   1/1  A™"
B65,565,0,1,3,4,40,B,"5586553"
X560,105,3,048,291
X48,290,3,560,511
X48,510,3,560,560
P
FE
O
""".format(tarih,alici,Adres1,Adres2,ilce,Tel,fiyat))
ac.close()
os.startfile("C:/Users/pc/Desktop/zebra.ykss","print")

Şu kodları değiştirip tekrar dener misiniz?

ac=open(“C:/Users/pc/Desktop/zebra.ykss”,“w”) # yerine
ac=open(r"C:/Users/pc/Desktop/zebra.ykss","w") # bunu

ve

os.startfile(“C:/Users/pc/Desktop/zebra.ykss”,“print”) # yerine
os.startfile(r"C:/Users/pc/Desktop/zebra.ykss","print") # bunu 
1 Like

sonuç aynı :frowning:

Sanırım sorun, dosyanın uzantısından kaynaklanıyor, .ykss yerine .txt yazınca çalışıyor mu?

1 Like

.ykss normal olarak baskı alabildiğimiz bir uzantı
.txt’de denedim onuda bastırmadı
vakit ayırdığın için teşekkürler ben eski düzende devam edeceğim galiba :frowning:

Şuanlık elimden başka bir şey gelmiyor, bir kaynak bulursam burada paylaşırım, kolay gelsin.

1 Like

Benim anladığım bu dosyayı yazdırabilecek herhangi bir uygulama kayıtlı değil. Belki de yazdırma için kullandığınız uygulamada bazı değişiklikler yapmanız gerekiyordur.

yazıcıyı aktif olarak kullanıyoruz programı direk çıktı alıyoruz

Peki çıktı alırken nasıl bir yol izliyorsunuz? Yazıcıyı açıp dosya seçerek mi yoksa dosyaya sağ tıklayıp oradaki menüden “Yazdır” seçeneğini seçerek mi? Buradan dosyanın yazdırma için bir programda kayıtlı olup olmadığını anlayabiliriz.

.ykss uzantılı dosyaya 2 tıklıyoruz direk barkod yazıcıdan çıkartıyor.
Yurtiçi kargo self servisle entegre çalışıyor

Dediğim gibi varsayılan yazdırma programının bu uzantıdaki dosyaları nasıl yazdıracağını bilmesi gerek. Ancak sanıyorum ki bu uzantı Yurtiçi Kargo’nun kendi belirlediği bir uzantı; bu durumda bilmemesi normal. Bu arada bu nasıl bir dosya. Uzantısı daha bilindik bir dosya uzantısına dönüştürülemez mi?

değiştirildiği zaman yurtiçinin self servisi çalışmıyor …

Belki kodunuzda uzantıyı değiştirip, dosyayı yazdırıp, daha sonra dosyayı ilk uzantısına geri döndürebilirsiniz.

Bu kod parçası ile çıktı alabildim ancak hep araklı önlü (çift yüzlü) çıkartıyor. Tek yönlü yazdırmak için ne yapmam gerek?

Merhabalar,

GC420t yazıcı var elimde. Python içerisinden .prn uzantılı dosyadaki etiketi nasıl yazıcıya gönderebilirim? Yol gösterebilir misiniz? 2 gündür uğraşıyorum. Teşekkürler…

Hangi yolları denedin. Yukarıdaki verilen komutu denedin mi?

os.startfile("dosya yolu", "print")

Evet bu komutu denedim. prn uzantılı olunca bu dosya herhangi bir uygulama ile ilişkilendirilmemiş uyarısı alıyorum. ZPL kodlarını bir txt dosyasına kaydediyorum ve yine bu komut ile txt dosyasını gönderdiğimde ZPL kodlarını normal bir metin gibi yazıcıdan basıyor.

Yazıcı usb ile mi bağlı