2012-06-29 24 views
11

Tôi đã có một gói python mà kết quả đầu ra văn bản trợ giúp đáng kể từ: help(package)Làm thế nào để xuất khẩu sản lượng của sự giúp đỡ xây dựng trong Python() chức năng

Tôi muốn xuất khẩu văn bản trợ giúp này vào một tập tin, trong định dạng được hiển thị bởi help(package)

Làm cách nào để tôi thực hiện việc này?

+3

Bạn có biết về [mô-đun pydoc] (http://docs.python.org/library/pydoc.html)? – DSM

Trả lời

5

Đây là một chút hackish (và có thể là một giải pháp tốt hơn nơi nào đó), nhưng hoạt động này:

import sys 
import pydoc 

def output_help_to_file(filepath, request): 
    f = file(filepath, 'w') 
    sys.stdout = f 
    pydoc.help(request) 
    f.close() 
    sys.stdout = sys.__stdout__ 
    return 

Và sau đó ...

>>> output_help_to_file(r'test.txt', 're') 
1

Nếu bạn làm giúp (help) bạn sẽ thấy:

Help on _Helper in module site object: 

class _Helper(__builtin__.object) 
| Define the builtin 'help'. 
| This is a wrapper around pydoc.help (with a twist). 

[còn lại snipped]

Vì vậy - bạn nên nhìn vào các mô-đun pydoc - có sẽ là một phương pháp hoặc các phương pháp mà trở lại những gì help(something) làm như là một chuỗi ...

11

pydoc.render_doc (điều) để có được văn bản trợ giúp điều như là một chuỗi. Các phần khác của pydoc như pydoc.text và pydoc.html có thể giúp bạn ghi nó vào một tệp.

Sử dụng công cụ sửa đổi -w trong linux sẽ ghi đầu ra vào html trong thư mục hiện tại, ví dụ;

pydoc -w Rpi.GPIO 

Đặt tất cả các văn bản help() rằng sẽ được trình bày từ lệnh help(Rpi.GPIO) vào một tập tin Rpi.GPIO.html định dạng độc đáo, trong thư mục hiện của vỏ

+3

Điều này thực sự dễ hơn một chút so với câu trả lời đã chọn. –

+1

Tôi đã tìm thấy câu trả lời được chọn không tốt lắm, sử dụng bài đăng này, tôi đã nghiên cứu một chút về pydocs và chỉnh sửa câu trả lời này với giải pháp chính xác của tôi – davidhood2

+0

Rất tốt, cảm ơn. Tôi không biết có một tiện ích dòng lệnh để đi với nó. –

Các vấn đề liên quan