Strona główna Polish Python Coders Group
   Strona główna   Pomoc Zaloguj się Rejestracja  
Witamy, Gość. Zaloguj się lub zarejestruj.
Czy dotarł do Ciebie email aktywacyjny?

Zaloguj się podając nazwę użytkownika, hasło i długość sesji

Aktualności: PyStok #31 - 8 maja 2018, 18:00, Białystok :: http://pystok.org/pystok-31/
Szukaj Szukaj
Strony: [1]   Do dołu
Drukuj
Wątek: .pdf w pythonie  (Przeczytany 569 razy)
« : 14:52 14/02/18 »
marmar Offline
Hello World!

Zobacz profil
*

Reputacja: 0
Wiadomości: 32


Witam, chciałabym stworzyć plik .pdf w pythonie zawierający dane z pliku .csv. Zaczęłam od instalacji python-pip:

Kod
sudo apt-get install python-pip
 
następnie instalacja pdfkit  
Kod
pip install pdfkit
 

Po tym stworzyłam sobie plik .py :
Kod
import pdfkit
def makefile():
   pdfkit.from_string("LISTA OBECNOSCI", "attendence_list.pdf")
 
makefile()
 

Niestety już na poczatku napotkałam problem, po uruchomieniu programu otrzymuję komunikat "ImportError: No module named 'pdfkit'"

Dodam ze instalacje przebiegła pomyślnie ( "Successfully installed pdfkit-0.6.1" )
 
Bardzo proszę o pomoc.
Zapisane
« Odpowiedz #1 : 16:05 14/02/18 »
jundymek Offline
Professional Python User

Zobacz profil
***

Reputacja: 4
Wiadomości: 317


Może zainstalowałeś na inną wersję Pythona? Odpalasz plik z poziomu ide czy z terminala? W terminalu zobacz sobie komendę "pip freeze". Będziesz miała wyrzucone wszystkie zainstalowane moduły. Sprawdź czy jest pdfkit. I ostatnie - czy nie nazwałaś przypadkiem pliku "pdfkit.py"?
Zapisane
« Odpowiedz #2 : 16:35 14/02/18 »
DJangoL Offline
Professional Python User

Zobacz profil
***

Reputacja: 30
Wiadomości: 334


import w py2 i py3 też się trochę różni.
Zapisane
« Odpowiedz #3 : 17:31 14/02/18 »
marmar Offline
Hello World!

Zobacz profil
*

Reputacja: 0
Wiadomości: 32


Już działa. Wersja pdfkit którą zainstalowałam nie jest przeznaczona dla python3, a tak właśnie uruchamiałam program i dlatego był błąd.
Dzięki za pomoc Mrugnięcie
Zapisane
« Odpowiedz #4 : 10:19 15/02/18 »
marmar Offline
Hello World!

Zobacz profil
*

Reputacja: 0
Wiadomości: 32


Pomocy!
nie wiem kompletnie jak się zabrać za tworzenie pdf z danymi pobranymi z pliku csv.
czy moge prosić o podpowiedz jak np wyśrodkować tekst który dodaje do pliku pdf? Jak dodawać tekst w pętli ? jak tworzyć tabelke?
Z góry bardzo dziękuje za rady Uśmiech
Zapisane
« Odpowiedz #5 : 11:18 15/02/18 »
jell Offline
Administrator
Expert Python User

Zobacz profil
*****

Reputacja: 65
Płeć: Mężczyzna
Wiadomości: 583


Tak. Możesz.
Zapisane

The UNIX Guru`s view of Sex:
unzip; strip; touch; finger; mount; fsck; more; yes; umount; sleep
« Odpowiedz #6 : 11:21 15/02/18 »
jell Offline
Administrator
Expert Python User

Zobacz profil
*****

Reputacja: 65
Płeć: Mężczyzna
Wiadomości: 583


A na serio - pdfkit oczekuje tekstu sformatowanego jako html, tak wiec mozesz dodawac paragrafy, mozesz uzywac <br>, musisz uzywac <table><tr><td> tak jak w zwyklym html.

Generalnie pdfkit bazuje na https://wkhtmltopdf.org/ - tak wiec tam doczytaj co/jak mozna nim zrobic.
Zapisane

The UNIX Guru`s view of Sex:
unzip; strip; touch; finger; mount; fsck; more; yes; umount; sleep
« Odpowiedz #7 : 11:30 15/02/18 »
jell Offline
Administrator
Expert Python User

Zobacz profil
*****

Reputacja: 65
Płeć: Mężczyzna
Wiadomości: 583


Jesli nie chcesz uzywac do formatowania tekstu html (np. bo go nie znasz) - https://www.reportlab.com/docs/reportlab-userguide.pdf ale ostrzegam - uzycie html ulatwia bardzo mocno zadanie.
Zapisane

The UNIX Guru`s view of Sex:
unzip; strip; touch; finger; mount; fsck; more; yes; umount; sleep
« Odpowiedz #8 : 13:55 15/02/18 »
marmar Offline
Hello World!

Zobacz profil
*

Reputacja: 0
Wiadomości: 32


A w jaki sposób wczytać dane z pliku csv a potem sformatować go za pomocą html w skrypcie .py ?

Przepraszam za może mało precyzyjne pytania ale absolutnie nie rozumiem jak to działa.

Moze napisze o co dokładnie mi chodzi:

Posiadam plik csv z pewnymi danymi. Chciałabym napisać skrypt w języku python (bo taki aktualnie znam) w którym będą funkcje operujące na tych danych. Np.: Jeśli w drugiej kolumnie drugiego wiersza (w pliku csv) znajduje się "x" to zapisz w pliku pdf "obecność: obowiązkowa" wyrównując do prawej krawędzi
LUB
jeśli w drugiej kolumnie pierwszego wiersza znajduje się "luty" zapisz do pliku pdf "luty" jako nagłówek tabelki.

Proszę o pomoc 
Zapisane
« Odpowiedz #9 : 14:26 19/02/18 »
marmar Offline
Hello World!

Zobacz profil
*

Reputacja: 0
Wiadomości: 32


Czy ktoś potrafi mi pomóc ?
Zapisane
« Odpowiedz #10 : 16:42 19/02/18 »
BoaDusiciel Offline
Hello World!

Zobacz profil
*

Reputacja: 1
Wiadomości: 6


Probowalas zamienic plik .csv w .txt ? Tutaj masz wiecej : https://pl.wikipedia.org/wiki/CSV_(format_pliku) . Masz specjalne znaki ktore cos oznaczaja , ja bym napisal program ktory szuka tych znakow np Jezeli jest znak konca linii tzn ,ze jest to nowy wpis . Przykladowo ' " ' oznacza rozpoczecie kolumny nastepny ' " ' oznacza koniec itd itp.
Zapisane
« Odpowiedz #11 : 21:09 19/02/18 »
orkan Offline
Hello World!

Zobacz profil
*

Reputacja: 1
Wiadomości: 2


Kod
import csv
with open('plik.csv', 'rb') as csvfile:
   data = csv.reader(csvfile, delimiter=',', quotechar='"')

Zmienna data będzie zawierała listę wierszy z listą wartości z csv. Tutaj znajdziesz więcej o module csv: https://docs.python.org/2/library/csv.html
Zapisane
Strony: [1]   Do góry
Drukuj
Skocz do:  

© 2007 - 2018 Polish Python Coders Group
Powered by SMF 1.1.21 | SMF © 2006-2009, Simple Machines | Theme by PixelSlot