Hướng dẫn python export data to html - python xuất dữ liệu sang html

Nội dung

  • Mục tiêu bài học
  • Các tệp cần thiết cho bài học này
  • Xây dựng trình bao bọc HTML
  • metadata
  • Định dạng chuỗi Python
  • Tệp dữ liệu tự ghi chép
    • Hướng dẫn Mac
    • Hướng dẫn Windows
  • Để tất cả chúng cùng nhau
    • Bài đọc đề xuất
    • Đồng bộ hóa mã

Mục tiêu bài học

Bài học này lấy các cặp tần số được tạo trong việc đếm tần số và xuất chúng vào một tệp HTML.

Ở đây bạn sẽ tìm hiểu cách xuất dữ liệu dưới dạng tệp HTML bằng Python. Bạn cũng sẽ tìm hiểu về định dạng chuỗi. Kết quả cuối cùng là một tệp HTML hiển thị các từ khóa được tìm thấy trong nguồn gốc theo thứ tự tần số giảm dần, cùng với số lần mỗi từ khóa xuất hiện.

Các tệp cần thiết cho bài học này

  • obo.py

Xây dựng trình bao bọc HTML

Xây dựng trình bao bọc HTML

metadata

Định dạng chuỗi Python

Tệp dữ liệu tự ghi chép

Định dạng chuỗi Python

Tệp dữ liệu tự ghi chép


frame = 'This fruit is a %s'
print[frame]
-> This fruit is a %s

print[frame % 'banana']
-> This fruit is a banana

print[frame % 'pear']
-> This fruit is a pear

Hướng dẫn Mac


frame2 = 'These are %s, those are %s'
print[frame2]
-> These are %s, those are %s

print[frame2 % ['bananas', 'pears']]
-> These are bananas, those are pears

Hướng dẫn Windows

Tệp dữ liệu tự ghi chép

Hướng dẫn Mac

# Given a URL, return string of lowercase text from page.

def webPageToText[url]:
    import urllib.request, urllib.error, urllib.parse
    response = urllib.request.urlopen[url]
    html = response.read[].decode['UTF-8']
    text = stripTags[html].lower[]
    return text

Hướng dẫn Windows

Hướng dẫn Mac

Nếu bạn đang sử dụng máy Mac, hãy đảm bảo bạn bao gồm đường dẫn tệp thích hợp trong biến tên tệp trên dòng cuối cùng thứ 2 để phản ánh nơi bạn lưu tệp của mình.

# Given name of calling program, a url and a string to wrap,
# output string in html body with basic metadata and open in Firefox tab.

def wrapStringInHTMLMac[program, url, body]:
    import datetime
    from webbrowser import open_new_tab

    now = datetime.datetime.today[].strftime["%Y%m%d-%H%M%S"]
    filename = program + '.html'
    f = open[filename,'w']

    wrapper = """
    
    %s output - %s
    
    

URL: %s

%s

"""
whole = wrapper % [program, now, url, url, body] f.write[whole] f.close[] #Change the filepath variable below to match the location of your directory filename = 'file:///Users/username/Desktop/programming-historian/' + filename open_new_tab[filename]

Hướng dẫn Windows

# Given name of calling program, a url and a string to wrap,
# output string in html body with basic metadata
# and open in Firefox tab.

def wrapStringInHTMLWindows[program, url, body]:
    import datetime
    from webbrowser import open_new_tab

    now = datetime.datetime.today[].strftime["%Y%m%d-%H%M%S"]

    filename = program + '.html'
    f = open[filename,'w']

    wrapper = """
    
    %s output - %s
    
    

URL: %s

%s

"""
whole = wrapper % [program, now, url, url, body] f.write[whole] f.close[] open_new_tab[filename]

***

Lưu ý rằng chức năng này sử dụng toán tử định dạng chuỗi mà chúng ta vừa học. Nếu bạn vẫn gặp rắc rối với ý tưởng này, hãy xem tệp HTML mở trong tab Firefox mới của bạn và bạn sẽ thấy cách thức hoạt động của nó. Nếu bạn vẫn bị mắc kẹt, hãy xem

URL: //www.oldbaileyonline.org/browse.jsp?id=t17800628-33&div=t17800628-33

Trong tệp HTML và truy tìm lại cách chương trình biết đặt giá trị URL ở đó.

Hàm này cũng gọi thư viện Python


frame2 = 'These are %s, those are %s'
print[frame2]
-> These are %s, those are %s

print[frame2 % ['bananas', 'pears']]
-> These are bananas, those are pears
3 để xác định thời gian và ngày hiện tại. Giống như toán tử định dạng chuỗi %s, thư viện này sử dụng

frame2 = 'These are %s, those are %s'
print[frame2]
-> These are %s, those are %s

print[frame2 % ['bananas', 'pears']]
-> These are bananas, those are pears
5 làm thay thế cho các giá trị. Trong trường hợp này,

frame2 = 'These are %s, those are %s'
print[frame2]
-> These are %s, those are %s

print[frame2 % ['bananas', 'pears']]
-> These are bananas, those are pears
6 đại diện cho năm, tháng, ngày, giờ, phút và thứ hai tương ứng. Không giống như %s, chương trình sẽ xác định giá trị của các biến này cho bạn bằng đồng hồ máy tính của bạn. Điều quan trọng là phải nhận ra sự khác biệt này.

Siêu dữ liệu ngày này, cùng với tên của chương trình được gọi là hàm, được lưu trữ trong thẻ tiêu đề HTML. Tệp HTML được tạo có cùng tên với chương trình Python tạo ra nó, nhưng với tiện ích mở rộng


frame2 = 'These are %s, those are %s'
print[frame2]
-> These are %s, those are %s

print[frame2 % ['bananas', 'pears']]
-> These are bananas, those are pears
8 chứ không phải là

frame2 = 'These are %s, those are %s'
print[frame2]
-> These are %s, those are %s

print[frame2 % ['bananas', 'pears']]
-> These are bananas, those are pears
9.

Để tất cả chúng cùng nhau

Bây giờ chúng tôi có thể tạo một phiên bản khác của chương trình của chúng tôi để tính toán tần số. Thay vì gửi đầu ra của nó đến một tệp văn bản hoặc cửa sổ đầu ra, nó sẽ gửi đầu ra đến tệp HTML được mở trong tab Firefox mới. Từ đó, đầu ra của chương trình có thể được thêm dễ dàng như các mục thư mục cho Zotero. Nhập hoặc sao chép mã sau vào trình soạn thảo văn bản của bạn, lưu nó dưới dạng

# Given a URL, return string of lowercase text from page.

def webPageToText[url]:
    import urllib.request, urllib.error, urllib.parse
    response = urllib.request.urlopen[url]
    html = response.read[].decode['UTF-8']
    text = stripTags[html].lower[]
    return text
0 và thực thi nó, để xác nhận rằng nó hoạt động như mong đợi.

Sử dụng obo.wrapstringinhtmlmac [] hoặc obo.wrapstringinhtmlwindows [] khi phù hợp với hệ thống của bạn.

# html-to-freq-3.py
import obo

# create sorted dictionary of word-frequency pairs
url = '//www.oldbaileyonline.org/browse.jsp?id=t17800628-33&div=t17800628-33'
text = obo.webPageToText[url]
fullwordlist = obo.stripNonAlphaNum[text]
wordlist = obo.removeStopwords[fullwordlist, obo.stopwords]
dictionary = obo.wordListToFreqDict[wordlist]
sorteddict = obo.sortFreqDict[dictionary]

# compile dictionary into string and wrap with HTML
outstring = ""
for s in sorteddict:
    outstring += str[s]
    outstring += "
"
obo.wrapStringInHTMLMac["html-to-freq-3", url, outstring]

Lưu ý rằng chúng tôi đã xen kẽ các cặp tần số từ với thẻ HTML Break

# Given a URL, return string of lowercase text from page.

def webPageToText[url]:
    import urllib.request, urllib.error, urllib.parse
    response = urllib.request.urlopen[url]
    html = response.read[].decode['UTF-8']
    text = stripTags[html].lower[]
    return text
1, hoạt động như một dòng mới. Nếu mọi việc suôn sẻ, bạn sẽ thấy cùng một tần số từ mà bạn đã tính toán trong phần cuối, lần này trong cửa sổ trình duyệt của bạn.

Bài đọc đề xuất

  • Lutz, học Python
    • Đọc lại và xem xét chs. 1-17

Đồng bộ hóa mã

Để làm theo cùng với các bài học trong tương lai, điều quan trọng là bạn có các tệp và chương trình phù hợp trong thư mục lập trình của bạn. Ở cuối mỗi chương, bạn có thể tải xuống tệp ZIP lập trình-Historian Hitming-Historian để đảm bảo bạn có mã chính xác. Nếu bạn đang theo dõi cùng với phiên bản MAC/Linux, bạn có thể phải mở tệp obo.py và thay đổi tệp: /// người dùng/tên người dùng/máy tính để bàn/lập trình-historian/ra đường dẫn đến thư mục trên máy tính của riêng bạn.

  • Python-irssons7.zip Zip Sync

Có thể đầu ra Python cho HTML?

Ngôn ngữ Python có những ứng dụng tuyệt vời ngày nay trong hầu hết mọi lĩnh vực, nó có thể được sử dụng cùng với các công nghệ khác để làm cho cuộc sống của chúng ta dễ dàng hơn.Một cách sử dụng Python như vậy là nhận được đầu ra dữ liệu trong tệp HTML.Chúng tôi có thể lưu bất kỳ số lượng dữ liệu đầu vào của chúng tôi vào tệp HTML trong Python bằng các ví dụ sau theo hai cách.One such use of python is getting the data output in an HTML file. We can save any amount of our input data into an HTML file in python using the following examples in two ways.

Tôi có thể nhập tệp python trong html không?

Với Pyscript, bạn có thể nhúng mã Python vào HTML hoặc liên kết đến tệp Python và mã sẽ thực thi trong trình duyệt - mà không cần chạy Python trong phần phụ trợ.Pyscript được tạo ra bởi Anaconda và được công bố công khai vào ngày 30 tháng 4 tại Pycon US 2022. and the code will execute in the browser — without running Python in the backend. PyScript was created by Anaconda and was publicly announced on April 30 at PyCon US 2022.

Chủ Đề