Hướng dẫn how do i get data from tableau using python? - làm cách nào để lấy dữ liệu từ hoạt cảnh bằng python?

Tuyên bố miễn trừ trách nhiệm: & NBSP; Chủ đề này bao gồm thông tin về sản phẩm của bên thứ ba. Xin lưu ý rằng trong khi chúng tôi thực hiện mọi nỗ lực để giữ các tham chiếu đến nội dung của bên thứ ba chính xác, thông tin chúng tôi cung cấp ở đây có thể thay đổi mà không cần thông báo khi thay đổi Python. Để biết thông tin cập nhật nhất, vui lòng tham khảo tài liệu và hỗ trợ Python. This topic includes information about a third-party product. Please note that while we make every effort to keep references to third-party content accurate, the information we provide here might change without notice as python changes. For the most up-to-date information, please consult the python documentation and support.

Python là một ngôn ngữ lập trình cấp cao được sử dụng rộng rãi cho lập trình đa năng. Bằng cách gửi các lệnh Python đến một dịch vụ bên ngoài thông qua Tableau Prep Builder, bạn có thể dễ dàng mở rộng các tùy chọn chuẩn bị dữ liệu của mình bằng cách thực hiện các hành động như thêm số hàng, các trường xếp hạng, điền vào các trường và thực hiện các hoạt động làm sạch khác mà bạn có thể thực hiện bằng cách sử dụng các trường được tính toán.Tableau Prep Builder, you can easily extend your data preparation options by performing actions like adding row numbers, ranking fields, filling down fields and performing other cleaning operations that you might otherwise do using calculated fields.

Để bao gồm các tập lệnh Python trong luồng của bạn, bạn cần định cấu hình kết nối giữa Tableau và máy chủ Tabpy. Sau đó, bạn có thể sử dụng các tập lệnh Python để áp dụng các chức năng được hỗ trợ vào dữ liệu từ luồng của bạn bằng cách sử dụng khung dữ liệu Pandas. Khi bạn thêm một bước tập lệnh vào luồng của mình và chỉ định chi tiết cấu hình, tệp và chức năng mà bạn muốn sử dụng, dữ liệu được truyền an toàn cho máy chủ Tabpy, các biểu thức trong tập lệnh được áp dụng và kết quả được trả về dưới dạng bảng mà bạn có thể làm sạch hoặc đầu ra khi cần thiết.

Bạn có thể chạy các luồng bao gồm các bước tập lệnh trong máy chủ Tableau miễn là bạn đã cấu hình kết nối với máy chủ Tabpy của mình. Chạy các luồng với các bước tập lệnh trong Tableau Cloud, hiện không được hỗ trợ. Để định cấu hình Tableau & nbsp; máy chủ, hãy xem cấu hình máy chủ Tableau Python (Tabpy) cho máy chủ Tableau.

Để biết thông tin về cách định cấu hình các trang web trên máy chủ Tableau với các phần mở rộng phân tích cho sổ làm việc, hãy xem Cấu hình kết nối với các phần mở rộng phân tích.

Điều kiện tiên quyết

Để bao gồm các tập lệnh Python trong luồng của bạn, hãy hoàn thành thiết lập sau. Tạo hoặc chạy các luồng với các bước tập lệnh trong Tableau Cloud hiện không được hỗ trợ.

  1. Tải xuống và cài đặt Python (Liên kết mở trong một cửa sổ mới). Tải xuống và cài đặt phiên bản Python mới nhất cho Linux, Mac hoặc Windows.(Link opens in a new window). Download and install the most current version of Python for Linux, Mac or Windows.

  2. Tải xuống và cài đặt máy chủ Tableau Python (Tabpy (Link mở trong một cửa sổ mới)). Thực hiện theo hướng dẫn cài đặt và cấu hình để cài đặt Tabpy. Tableau Prep Builder sử dụng Tabpy để truyền dữ liệu từ luồng của bạn qua Tabpy làm đầu vào, áp dụng tập lệnh của bạn, sau đó trả lại kết quả trở lại luồng.(Link opens in a new window)). Follow the installation and configuration instructions for installing TabPy. Tableau Prep Builder uses TabPy to pass data from your flow through TabPy as the input, applies your script, then returns the results back to the flow.

  3. Cài đặt gấu trúc. Chạy pip3 install pandas. Bạn phải sử dụng khung dữ liệu gấu trúc trong tập lệnh của mình để tích hợp với Tableau Prep Builder.Tableau Prep Builder.

Định cấu hình máy chủ Tableau Python (Tabpy) cho máy chủ TableauTableau Server

Nếu bạn có kế hoạch xuất bản, tạo, chỉnh sửa và chạy các luồng bao gồm các bước tập lệnh trong máy chủ Tableau, bạn sẽ cần định cấu hình kết nối giữa máy chủ Tabpy và máy chủ Tableau.

  • Phiên bản 2019.3 trở lên: Bạn có thể chạy các luồng được xuất bản bao gồm các bước tập lệnh trong máy chủ Tableau.: You can run published flows that include script steps in Tableau Server.
  • Phiên bản 2020.4.1 trở lên: Bạn có thể tạo, chỉnh sửa và chạy các luồng bao gồm các bước tập lệnh trong máy chủ Tableau.: You can create, edit, and run flows that include script steps in Tableau Server.
  • Tableau Cloud: Tạo hoặc chạy các luồng với các bước tập lệnh hiện không được hỗ trợ.: Creating or running flows with script steps isn't currently supported.
  1. Mở dòng lệnh TSM/shell.
  2. Nhập các lệnh sau để đặt địa chỉ máy chủ, giá trị cổng và kết nối thời gian chờ:

    tsm security maestro-tabpy-ssl enable --connection-type {maestro-tabpy-secure/maestro-tabpy} --tabpy-host --tabpy-port --tabpy-username --tabpy-password --tabpy-connect-timeout-ms

    • Chọn {maestro-tabpy-secure} để bật kết nối an toàn hoặc {maestro-tabpy} để bật kết nối không có bảo đảm.
    • Nếu bạn chọn {maestro-tabpy-secure}, hãy chỉ định tệp chứng chỉ -cf trong dòng lệnh.
    • Chỉ định --tabpy-connect-timeout-ms tính bằng mili giây. Ví dụ --tabpy-connect-timeout-ms 900000.
  3. Để vô hiệu hóa kết nối tabpy, hãy nhập lệnh sau

    def get_output_schema():       
      return pd.DataFrame({
        'Opportunity Number' : prep_int(),
        'Supplies Subgroup Encoded' : prep_int(),
        'Region Encoded' : prep_int(),
        'Route To Market Encoded' : prep_int(),
        'Opportunity Result Encoded' : prep_int(),
        'Competitor Type Encoded' : prep_int(),
        'Supplies Group Encoded' : prep_int()
    })
    
    0

Tạo tập lệnh Python của bạn

Khi bạn tạo tập lệnh của mình, bao gồm một hàm chỉ định một gấu trúc (pd.dataframe) là một đối số của hàm. Điều này sẽ gọi dữ liệu của bạn từ Tableau Prep Builder. Bạn cũng sẽ cần trả về kết quả trong một gấu trúc (pd.dataFrame) bằng cách sử dụng các loại dữ liệu được hỗ trợ.Tableau Prep Builder. You will also need to return the results in a pandas (pd.DataFrame) using supported data types.

Ví dụ: để thêm mã hóa vào một tập hợp các trường trong một luồng, bạn có thể viết tập lệnh sau:

def encode(input):     
  le = preprocessing.LabelEncoder()
  Return pd.DataFrame({
    'Opportunity Number' : input['Opportunity Number'],
    'Supplies Subgroup Encoded' : le.fit_transform(input['Supplies Subgroup']),
    'Region Encoded' : le.fit_transform(input['Region']),
    'Route To Market Encoded' : le.fit_transform(input['Route To Market']),
    'Opportunity Result Encoded' : le.fit_transform(input['Opportunity Result']),
    'Competitor Type Encoded' : le.fit_transform(input['Competitor Type']),
    'Supplies Group Encoded' : le.fit_transform(input['Supplies Group']),
})

Các loại dữ liệu sau được hỗ trợ:

Kiểu dữ liệu trong Trình xây dựng chuẩn bị TableauKiểu dữ liệu trong & nbsp; Python
Sợi dâyChuỗi UTF-8 tiêu chuẩn
Số thập phânKép
IntSố nguyên
BoolBoolean
NgàyChuỗi ở định dạng ISO_DATE, Yyyy-MM-DD, với phần bù vùng tùy chọn. Ví dụ, Hồi 2011-12-03, là một ngày hợp lệ.
Ngày giờChuỗi trong định dạng ISO_DATE_TIME, Yyyy-MM-DDT: HH: MM: SS, với phần bù vùng tùy chọn. Ví dụ, Hồi 2011-12-03T10: 15: 30+01: 00 là một ngày VSLID.

Lưu ý: Ngày và DateTime phải luôn được trả về dưới dạng chuỗi hợp lệ.: Date and DateTime must always be returned as a valid string.

Nếu bạn muốn trả về các trường khác nhau so với những gì bạn nhập, bạn sẽ cần bao gồm chức năng GET_OUTPUT_SCHEMA trong tập lệnh của bạn xác định các loại đầu ra và dữ liệu. Mặt khác, đầu ra sẽ sử dụng các trường từ dữ liệu đầu vào, được lấy từ bước trước bước tập lệnh trong luồng.

Sử dụng cú pháp sau khi chỉ định các loại dữ liệu cho các trường của bạn trong get_output_schema:

Chức năng trong PythonKết quả kiểu dữ liệu
Prep_String ()Sợi dây
prep_decimal ()Số thập phân
prep_int ()Số nguyên
prep_bool ()Boolean
prep_date ()Ngày
prep_datetime ()Ngày giờ

Ví dụ sau đây cho thấy chức năng get_output_schema được thêm vào trường mã hóa tập lệnh Python:

def get_output_schema():       
  return pd.DataFrame({
    'Opportunity Number' : prep_int(),
    'Supplies Subgroup Encoded' : prep_int(),
    'Region Encoded' : prep_int(),
    'Route To Market Encoded' : prep_int(),
    'Opportunity Result Encoded' : prep_int(),
    'Competitor Type Encoded' : prep_int(),
    'Supplies Group Encoded' : prep_int()
})

Kết nối với máy chủ Tableau Python (Tabpy) của bạn

Quan trọng: Bắt đầu trong Tableau Prep Builder phiên bản 2020.3.3, bạn có thể định cấu hình kết nối máy chủ của mình một lần từ menu Trợ giúp trên cùng thay vì thiết lập kết nối của bạn trên mỗi luồng tập lệnh bằng cách nhấp vào Kết nối với máy chủ Tableau Python (Tabpy) và nhập kết nối của bạn thông tin chi tiết. Bạn sẽ cần phải cấu hình lại kết nối của mình bằng cách sử dụng menu mới này cho bất kỳ luồng nào được tạo trong phiên bản cũ của Tableau Prep Builder mà bạn mở trong phiên bản 2020.3.3.: Starting in Tableau Prep Builder version 2020.3.3, you can configure your server connection once from the top Help menu instead of setting up your connection per flow in the Script step by clicking Connect to Tableau Python (TabPy) Server and entering your connection details. You will need to reconfigure your connection using this new menu for any flows that were created in an older version of Tableau Prep Builder that you open in version 2020.3.3.

  1. Chọn Trợ giúp> Cài đặt và Hiệu suất> Quản lý Kết nối mở rộng Analytics.Help > Settings and Performance > Manage Analytics Extension Connection.
  2. Trong danh sách thả xuống mở rộng phân tích, chọn máy chủ Tableau Python (Tabpy).Select an Analytics Extension drop-down list, select Tableau Python (TabPy) Server.

    Hướng dẫn how do i get data from tableau using python? - làm cách nào để lấy dữ liệu từ hoạt cảnh bằng python?

  3. Nhập thông tin đăng nhập của bạn:
    • Cổng 9004 là cổng mặc định cho Tabpy.
    • Nếu máy chủ yêu cầu thông tin đăng nhập, hãy nhập tên người dùng và mật khẩu.
    • Nếu máy chủ sử dụng mã hóa SSL, chọn hộp kiểm Yêu cầu SSL, sau đó nhấp vào tệp cấu hình không được chỉ định ... liên kết để chọn chứng chỉ cho kết nối. Đây là tệp chứng chỉ máy chủ SSL của bạn.No custom configuration file specified... link to select a certificate for the connection. This is your SSL server certificate file.

      Lưu ý: Tableau Prep Builder không cung cấp cách kiểm tra kết nối. Nếu có vấn đề với kết nối, một thông báo lỗi sẽ hiển thị.: Tableau Prep Builder doesn't provide a way to test the connection. If there is a problem with the connection an error message shows.

Thêm một tập lệnh vào luồng của bạn

Bắt đầu máy chủ Tabpy của bạn sau đó hoàn thành các bước sau:

Lưu ý: Tabpy yêu cầu gói Tornado phiên bản 5.1.1 để chạy. Nếu bạn nhận được lỗi 'Tornado.web' không có thuộc tính 'không đồng bộ' khi cố gắng bắt đầu Tabpy, từ dòng lệnh chạy

def get_output_schema():       
  return pd.DataFrame({
    'Opportunity Number' : prep_int(),
    'Supplies Subgroup Encoded' : prep_int(),
    'Region Encoded' : prep_int(),
    'Route To Market Encoded' : prep_int(),
    'Opportunity Result Encoded' : prep_int(),
    'Competitor Type Encoded' : prep_int(),
    'Supplies Group Encoded' : prep_int()
})
1 để kiểm tra phiên bản Tornado đã được cài đặt. Nếu bạn đã cài đặt phiên bản khác, hãy tải xuống Gói Tornado phiên bản 5.1.1 (Link mở trong một cửa sổ mới). Sau đó chạy
def get_output_schema():       
  return pd.DataFrame({
    'Opportunity Number' : prep_int(),
    'Supplies Subgroup Encoded' : prep_int(),
    'Region Encoded' : prep_int(),
    'Route To Market Encoded' : prep_int(),
    'Opportunity Result Encoded' : prep_int(),
    'Competitor Type Encoded' : prep_int(),
    'Supplies Group Encoded' : prep_int()
})
2 để gỡ cài đặt phiên bản hiện tại của bạn, sau đó chạy
def get_output_schema():       
  return pd.DataFrame({
    'Opportunity Number' : prep_int(),
    'Supplies Subgroup Encoded' : prep_int(),
    'Region Encoded' : prep_int(),
    'Route To Market Encoded' : prep_int(),
    'Opportunity Result Encoded' : prep_int(),
    'Competitor Type Encoded' : prep_int(),
    'Supplies Group Encoded' : prep_int()
})
3 để cài đặt phiên bản cần thiết.
: TabPy requires tornado package version 5.1.1 to run. If you receive the error 'tornado.web' has no attribute 'asynchronous' when trying to start TabPy, from the command line run
def get_output_schema():       
  return pd.DataFrame({
    'Opportunity Number' : prep_int(),
    'Supplies Subgroup Encoded' : prep_int(),
    'Region Encoded' : prep_int(),
    'Route To Market Encoded' : prep_int(),
    'Opportunity Result Encoded' : prep_int(),
    'Competitor Type Encoded' : prep_int(),
    'Supplies Group Encoded' : prep_int()
})
1 to check the version of tornado that was installed. If you have a different version installed, download the tornado package version 5.1.1(Link opens in a new window). Then run
def get_output_schema():       
  return pd.DataFrame({
    'Opportunity Number' : prep_int(),
    'Supplies Subgroup Encoded' : prep_int(),
    'Region Encoded' : prep_int(),
    'Route To Market Encoded' : prep_int(),
    'Opportunity Result Encoded' : prep_int(),
    'Competitor Type Encoded' : prep_int(),
    'Supplies Group Encoded' : prep_int()
})
2 to uninstall your current version, then run
def get_output_schema():       
  return pd.DataFrame({
    'Opportunity Number' : prep_int(),
    'Supplies Subgroup Encoded' : prep_int(),
    'Region Encoded' : prep_int(),
    'Route To Market Encoded' : prep_int(),
    'Opportunity Result Encoded' : prep_int(),
    'Competitor Type Encoded' : prep_int(),
    'Supplies Group Encoded' : prep_int()
})
3 to install the required version.

  1. Mở Tableau Prep Builder và nhấp vào nút Thêm kết nối.Add connection

    Hướng dẫn how do i get data from tableau using python? - làm cách nào để lấy dữ liệu từ hoạt cảnh bằng python?
    button.

    Trong tác giả web, từ trang chủ, nhấp vào Tạo> Flow hoặc từ trang Khám phá, nhấp vào mới> Flow. Sau đó nhấp vào Kết nối với dữ liệu.Home page, click Create > Flow or from the Explore page, click New > Flow. Then click Connect to Data.

  2. Từ danh sách các đầu nối, chọn loại tệp hoặc máy chủ lưu trữ dữ liệu của bạn. Nếu được nhắc, hãy nhập thông tin cần thiết để đăng nhập và truy cập dữ liệu của bạn.

  3. Nhấp vào biểu tượng Plus và chọn Thêm tập lệnh từ menu ngữ cảnh.

    Hướng dẫn how do i get data from tableau using python? - làm cách nào để lấy dữ liệu từ hoạt cảnh bằng python?
    icon, and select Add Script from the context menu.

    Hướng dẫn how do i get data from tableau using python? - làm cách nào để lấy dữ liệu từ hoạt cảnh bằng python?

  4. Trong ngăn kịch bản, trong phần Loại kết nối, chọn máy chủ Tableau Python (Tabpy).Connection type section, select Tableau Python (TabPy) Server.

    Hướng dẫn how do i get data from tableau using python? - làm cách nào để lấy dữ liệu từ hoạt cảnh bằng python?

  5. Trong phần Tên tệp, bấm Duyệt để chọn tệp tập lệnh của bạn.File Name section, click Browse to select your script file.
  6. Nhập tên chức năng sau đó nhấn Enter để chạy tập lệnh của bạn.Function Name then press Enter to run your script.

    Hướng dẫn how do i get data from tableau using python? - làm cách nào để lấy dữ liệu từ hoạt cảnh bằng python?

Bạn có thể kết nối Tableau với Python không?

Để bao gồm các tập lệnh Python trong luồng của bạn, bạn cần định cấu hình kết nối giữa Tableau và máy chủ Tabpy. Sau đó, bạn có thể sử dụng các tập lệnh Python để áp dụng các chức năng được hỗ trợ vào dữ liệu từ luồng của bạn bằng cách sử dụng khung dữ liệu Pandas.you need to configure a connection between Tableau and a TabPy server. Then you can use Python scripts to apply supported functions to data from your flow using a pandas dataframe.

Làm cách nào để trích xuất dữ liệu từ Tableau?

Có hai cách chính bạn có thể xuất dữ liệu của mình trong nguồn dữ liệu thành a.Tệp CSV trong Tableau: Từ trang nguồn dữ liệu và từ chế độ xem.Từ trang nguồn dữ liệu: Trên trang nguồn dữ liệu, chọn Dữ liệu> Xuất dữ liệu sang CSV để xuất tất cả dữ liệu trong nguồn dữ liệu của bạn sang tệp .csv.On the Data Source page, select Data > Export Data to CSV to export all the data in your data source to . csv file.

Tableau có API Python không?

Máy khách Tableau Server (TSC) là thư viện Python cho API REST của máy chủ Tableau.Sử dụng thư viện TSC, bạn có thể quản lý và thay đổi nhiều tài nguyên trực tuyến của Tableau Server và Tableau.Bạn có thể sử dụng thư viện này để tạo các ứng dụng tùy chỉnh của riêng bạn.. Using the TSC library, you can manage and change many of the Tableau Server and Tableau Online resources programmatically. You can use this library to create your own custom applications.

Làm thế nào để bạn tự động hóa trong Tableau bằng Python?

Các bước được thực hiện như sau:..
Tự động hóa Tableau: Định cấu hình máy chủ Tableau Python (Tabpy) cho máy chủ Tableau ..
Tự động hóa Tableau: Tạo tập lệnh Python của bạn ..
Tự động hóa Tableau: Kết nối với máy chủ Tableau Python (Tabpy) của bạn ..
Tự động hóa Tableau: Thêm tập lệnh vào luồng của bạn ..