Tableau có api python không?

Thư viện này cho phép các nhà phát triển gọi tất cả các phương thức như đã thấy trong tham chiếu API REST của Tableau Server. Mỗi phương thức trả về phản hồi HTTP tương ứng, cung cấp trong số những thứ khác mã trạng thái và nội dung phản hồi JSON

API REST của Tableau có nhiều phương thức bạn có thể tận dụng. Sử dụng tài liệu tham khảo API của họ để xác định các phương pháp giúp bạn hoàn thành bất kỳ tác vụ nào bạn cần. Mục đích của thư viện này là làm cho việc gọi các phương thức đó dễ dàng nhất có thể

trường hợp sử dụng

Giả sử bạn muốn tải xuống tệp PDF hoặc ảnh chụp màn hình của từng bảng điều khiển trên Tableau Server. Nói chung, bạn sẽ cần phải

  1. lấy danh sách tất cả các trang web trên Máy chủ Tableau của bạn
  2. đối với mỗi site, nhận danh sách tất cả sổ làm việc trên site
  3. đối với mỗi sổ làm việc, hãy tải xuống tệp PDF/ảnh chụp màn hình cho từng dạng xem trong sổ làm việc

Mặc dù không có phương thức nào trong Tableau Server REST API để in tất cả các tệp PDF sổ làm việc trên máy chủ, nhưng thư viện này cung cấp cho bạn các công cụ cần thiết để kết hợp các phương thức hiện có và xây dựng chức năng bạn cần. Thư viện này cho phép gọi tất cả các phương thức API REST của Máy chủ Tableau, cho phép bạn tự động hóa nhiều tác vụ quản trị Máy chủ Tableau của mình

Trong kịch bản trên, chúng ta có thể hoàn thành nhiệm vụ bằng cách xác định các phương thức sau trong Tham chiếu API REST

  1. Tham chiếu API. Trang web truy vấn. tableau-api-lib. query_sites[]
  2. Tham chiếu API. Truy vấn sổ làm việc trên trang web. tableau-api-lib. query_workbooks_on_site[]
  3. Tham chiếu API. Dạng xem Truy vấn cho Sổ làm việc. tableau-api-lib. query_views_for_workbook[]
  4. Tham chiếu API. Truy vấn Xem PDF. tableau-api-lib. query_view_pdf[]
  5. Tham chiếu API. Truy vấn Xem hình ảnh. tableau-api-lib. query_view_image[]
  6. Tham chiếu API. Chuyển đổi trang web. tableau-api-lib. switch_site[]

Tại sao nên sử dụng tableau-api-lib

Thư viện này cố gắng phản ánh từng phương thức API REST, từng từ một. Khi bạn tìm thấy các phương thức bạn cần trong tham chiếu API Tableau Server REST, thư viện này sẽ giúp bạn xâu chuỗi chúng lại với nhau. Để sử dụng thư viện này một cách hiệu quả, trước tiên bạn duyệt tham chiếu API REST của Tableau và xác định các phương thức cụ thể mà bạn định sử dụng. Sau đó, bạn có thể gọi các phương thức đó bằng thư viện này

Khi bạn gọi các phương thức tableau-api-lib, bạn sẽ nhận được phản hồi HTTP. Nếu bạn đang mong dữ liệu được trả lại cho mình [truy vấn người dùng, sổ làm việc, nhóm, v.v. ] thì bạn có thể sẽ muốn truy cập phần thân JSON của phản hồi

from tableau_api_lib import TableauServerConnection

tableau_config = {
    'tableau_prod': {
        'server': '//.com',
        'api_version': '',
        'username': '',
        'password': '',
        'site_name': '',
        'site_url': '',
        'cache_buster': '',
        'temp_dir': ''
    }
}

connection = TableauServerConnection[config_json=tableau_config, env='tableau_prod']
connection.sign_in[]

print[connection.query_sites[].json[]]

connection.sign_out[]
0

from tableau_api_lib import TableauServerConnection

tableau_config = {
    'tableau_prod': {
        'server': '//.com',
        'api_version': '',
        'username': '',
        'password': '',
        'site_name': '',
        'site_url': '',
        'cache_buster': '',
        'temp_dir': ''
    }
}

connection = TableauServerConnection[config_json=tableau_config, env='tableau_prod']
connection.sign_in[]

print[connection.query_sites[].json[]]

connection.sign_out[]
1 -> truy cập phần thân JSON của phản hồi, có thể được truy cập trực tiếp dưới dạng lệnh

from tableau_api_lib import TableauServerConnection

tableau_config = {
    'tableau_prod': {
        'server': '//.com',
        'api_version': '',
        'username': '',
        'password': '',
        'site_name': '',
        'site_url': '',
        'cache_buster': '',
        'temp_dir': ''
    }
}

connection = TableauServerConnection[config_json=tableau_config, env='tableau_prod']
connection.sign_in[]

print[connection.query_sites[].json[]]

connection.sign_out[]
2

Làm cách nào chúng tôi biết để truy cập phần tử 'trang web' và 'trang web'? . Sử dụng tài liệu tham khảo để hiểu cách máy chủ sẽ phản hồi yêu cầu của bạn

Tất cả hoạt động như thế nào

  1. from tableau_api_lib import TableauServerConnection
    
    tableau_config = {
        'tableau_prod': {
            'server': '//.com',
            'api_version': '',
            'username': '',
            'password': '',
            'site_name': '',
            'site_url': '',
            'cache_buster': '',
            'temp_dir': ''
        }
    }
    
    connection = TableauServerConnection[config_json=tableau_config, env='tableau_prod']
    connection.sign_in[]
    
    print[connection.query_sites[].json[]]
    
    connection.sign_out[]
    
    3
  2. Mở sổ ghi chép Jupyter hoặc tệp Python trong trình soạn thảo văn bản bạn chọn
  3. from tableau_api_lib import TableauServerConnection
    
    tableau_config = {
        'tableau_prod': {
            'server': '//.com',
            'api_version': '',
            'username': '',
            'password': '',
            'site_name': '',
            'site_url': '',
            'cache_buster': '',
            'temp_dir': ''
        }
    }
    
    connection = TableauServerConnection[config_json=tableau_config, env='tableau_prod']
    connection.sign_in[]
    
    print[connection.query_sites[].json[]]
    
    connection.sign_out[]
    
    4
  4. Nhập một đối tượng cấu hình [dict/JSON] hoặc xây dựng nó từ đầu bằng cách sử dụng các nguyên tắc cấu hình bên dưới
  5. from tableau_api_lib import TableauServerConnection
    
    tableau_config = {
        'tableau_prod': {
            'server': '//.com',
            'api_version': '',
            'username': '',
            'password': '',
            'site_name': '',
            'site_url': '',
            'cache_buster': '',
            'temp_dir': ''
        }
    }
    
    connection = TableauServerConnection[config_json=tableau_config, env='tableau_prod']
    connection.sign_in[]
    
    print[connection.query_sites[].json[]]
    
    connection.sign_out[]
    
    0
  6. from tableau_api_lib import TableauServerConnection
    
    tableau_config = {
        'tableau_prod': {
            'server': '//.com',
            'api_version': '',
            'username': '',
            'password': '',
            'site_name': '',
            'site_url': '',
            'cache_buster': '',
            'temp_dir': ''
        }
    }
    
    connection = TableauServerConnection[config_json=tableau_config, env='tableau_prod']
    connection.sign_in[]
    
    print[connection.query_sites[].json[]]
    
    connection.sign_out[]
    
    1
  7. Gọi kết nối Máy chủ Tableau của bạn để thực hiện các tác vụ từ tham chiếu API REST
  8. from tableau_api_lib import TableauServerConnection
    
    tableau_config = {
        'tableau_prod': {
            'server': '//.com',
            'api_version': '',
            'username': '',
            'password': '',
            'site_name': '',
            'site_url': '',
            'cache_buster': '',
            'temp_dir': ''
        }
    }
    
    connection = TableauServerConnection[config_json=tableau_config, env='tableau_prod']
    connection.sign_in[]
    
    print[connection.query_sites[].json[]]
    
    connection.sign_out[]
    
    2

Xác định đối tượng cấu hình của bạn

Một đối tượng cấu hình mẫu/khởi động được cung cấp

from tableau_api_lib import TableauServerConnection

tableau_config = {
    'tableau_prod': {
        'server': '//.com',
        'api_version': '',
        'username': '',
        'password': '',
        'site_name': '',
        'site_url': '',
        'cache_buster': '',
        'temp_dir': ''
    }
}

connection = TableauServerConnection[config_json=tableau_config, env='tableau_prod']
connection.sign_in[]

print[connection.query_sites[].json[]]

connection.sign_out[]
3
from tableau_api_lib import TableauServerConnection

tableau_config = {
    'tableau_prod': {
        'server': '//.com',
        'api_version': '',
        'username': '',
        'password': '',
        'site_name': '',
        'site_url': '',
        'cache_buster': '',
        'temp_dir': ''
    }
}

connection = TableauServerConnection[config_json=tableau_config, env='tableau_prod']
connection.sign_in[]

print[connection.query_sites[].json[]]

connection.sign_out[]
4

Đối tượng cấu hình có thể có nhiều môi trường. Môi trường mặc định được định nghĩa là 'tableau_prod' và bạn có thể thay đổi điều này nếu cần bằng cách chỉ định tham số 'env' khi gọi lớp TablauServerConnection. Đối với mỗi môi trường bạn có, hãy xác định chúng. Ví dụ

tableau_config = {
    'tableau_prod': {
        'server': '//.com',
        'api_version': '',
        'username': '',
        'password': '',
        'site_name': '',
        'site_url': '',
        'cache_buster': '',
        'temp_dir': ''
    },
    'tableau_dev': {
        'server': '//.com',
        'api_version': '',
        'username': '',
        'password': '',
        'site_name': '',
        'site_url': '',
        'cache_buster': '',
        'temp_dir': ''
    }
}

dùng thử

Ví dụ này tạo kết nối Máy chủ Tableau và in phản hồi từ việc gọi phương thức "query_sites" của API REST

from tableau_api_lib import TableauServerConnection

tableau_config = {
    'tableau_prod': {
        'server': '//.com',
        'api_version': '',
        'username': '',
        'password': '',
        'site_name': '',
        'site_url': '',
        'cache_buster': '',
        'temp_dir': ''
    }
}

connection = TableauServerConnection[config_json=tableau_config, env='tableau_prod']
connection.sign_in[]

print[connection.query_sites[].json[]]

connection.sign_out[]

Ví dụ về xây dựng danh sách các bộ lưu trữ tên trang web và ID trang web cho từng trang web trên máy chủ

connection = TableauServerConnection[tableau_config]
connection.sign_in[]
response = connection.query_sites[]
site_list = [[site['name'], site['id']] for site in response.json[]['sites']['site']]
connection.sign_out[]

Biến site_list là danh sách tất cả các trang có sẵn và mỗi phần tử của danh sách này là một bộ chứa tên trang và ID trang

Ví dụ về giải nén kết quả được phân trang

Giả sử bạn thử làm ví dụ trước [in tất cả tên trang web và ID trang web], nhưng bạn chỉ thấy 100 trang web, trong khi tổ chức của bạn thực sự có 170 trang web. Phản hồi HTTP bạn nhận được sẽ phân trang kết quả bất cứ khi nào bạn truy vấn máy chủ cho các mục như trang web, người dùng, nhóm, v.v.

Theo mặc định, các phản hồi HTTP này trả về 100 kết quả trên mỗi trang. Bạn có thể sửa đổi số lượng này theo cách thủ công hoặc bạn có thể sử dụng các hàm util tích hợp sẵn của chúng tôi để kiểm soát hành vi của các kết quả được phân trang

Dưới đây, bạn có thể tìm thấy ví dụ về cách giải nén tất cả các trang trong kết quả được phân trang

________số 8

Hàm extract_pages[] tự động giải nén tất cả các trang và kết quả có sẵn cho chúng tôi thông qua phương thức query_sites[] của kết nối của chúng tôi

Chúng ta cũng có thể chơi với các tham số tùy chọn trong hàm extract_pages[], như bên dưới

from tableau_api_lib.utils import extract_pages

connection = TableauServerConnection[tableau_config]
connection.sign_in[]
all_sites = extract_pages[conn.query_sites, starting_page=1, page_size=200, limit=500]
site_list = [[site['name'], site['id']] for site in all_sites]
connection.sign_out[]

Ví dụ trên sẽ lặp qua từng trang có sẵn của kết quả trang web [mỗi trang có 200 kết quả, một số chúng tôi đã chỉ định] và cắt bỏ kết quả ở 500 trang web. Không có giới hạn ngưỡng mặc định khi sử dụng extract_pages[];

Lưu ý rằng trong ví dụ đầu tiên, chúng tôi đã gọi trực tiếp query_sites[] và sau đó cần phân tích cú pháp đối tượng JSON được phương thức đó trả về. Tuy nhiên, khi chúng tôi sử dụng extract_pages[], chúng tôi chuyển phương thức 'query_sites' làm đối số và kết quả trả về cho chúng tôi đã được phân tích cú pháp. Phương thức extract_pages[] là một cách rõ ràng để lấy các đối tượng mong muốn mà chúng tôi đang truy vấn

Các chức năng được tìm thấy trong tableau_api_lib. sử dụng tất cả các bản dựng dựa trên chức năng cơ bản được hỗ trợ bởi tham chiếu API Tableau Server REST. Bạn có thể sử dụng các chức năng được tạo sẵn này hoặc xây dựng chức năng của riêng bạn khi bạn thấy phù hợp

Chúng ta có thể tích hợp Python với Tableau không?

Để bao gồm các tập lệnh Python trong quy trình 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 tập lệnh Python để áp dụng các hàm được hỗ trợ cho dữ liệu từ luồng của mình bằng cách sử dụng khung dữ liệu gấu trúc. . Tạo tập lệnh python của bạn

Tableau có API không?

Tableau Server cung cấp giao diện lập trình ứng dụng [API] cho phép bạn quản lý người dùng, sổ làm việc, kết nối dữ liệu và các tài nguyên khác trên máy chủ theo chương trình.

Python có thể lấy dữ liệu từ Tableau không?

Với một chút Python, bạn có thể tìm nạp dữ liệu từ chế độ xem Tableau , lưu trữ và xử lý dữ liệu trong Khung dữ liệu Pandas và xuất kết quả sang tệp CSV hoặc cơ sở dữ liệu. Như bạn sẽ thấy, chúng ta thậm chí có thể kiểm soát bộ lọc trang tính và các giá trị tham số.

Tableau có thể gọi API REST không?

Lưu trữ trang web có mã cần thiết để gọi API REST . Trong sổ làm việc Tableau của bạn, hãy thiết lập nguồn dữ liệu và bảng điều khiển với một trang tính sẽ gọi hành động URL sẽ chuyển đến trang web. Nếu muốn, hãy thêm đối tượng trang web vào bảng điều khiển để nhận phản hồi hoặc cập nhật.

Chủ Đề