2014-03-04 49 views
0

我用python-redmine,並希望得到wiki頁面的文字,但得到的錯誤 - 屬性不存在(但文本存在),這裏是我的代碼:Python的管理平臺:維基頁面文字

from redmine import Redmine 

redmine = Redmine('http://redmine.example.com', username='user', password='1234') 
projects = redmine.project.all() 

for project in projects: 
    print('Project: '+project.name) 
    try: 
     for page in project.wiki_pages: 
      try: 
       print('Title: '+page.title) 
      except: 
       print('Title: none') 

      try: 
       print('Content: '+page.text) 
      except: 
       print('Content: none') 
      print('\n===========================\n') 
    except: 
     print('None') 

我怎麼能從維基頁面獲取文本?幫我啄!由PiP

回答

1

這種方式無法獲得維基頁面文本,因爲project.wiki_pages僅返回可用於項目的所有wiki頁面的列表以及其他一些詳細信息。爲了得到一文,作者和其他一些信息供你必須爲每個wiki頁面單獨調用維基頁面:

from redmine import Redmine 

redmine = Redmine('http://redmine.example.com', username='user', password='1234') 
projects = redmine.project.all() 

for project in projects: 
    print('Project: ' + project.name) 

    for wiki_page in project.wiki_pages: 
     wiki_page_details = redmine.wiki_page.get(wiki_page.title, project_id=project.id) 

     print('Title: ' + wiki_page_details.title) 
     print('Content: ' + wiki_page_details.text) 
     print('\n===========================\n') 

這是不是很有效,但是Python管理平臺僅僅是Redmine的REST API接口,而且Redmine不提供在一次調用中獲取有關項目wiki頁面的所有信息的方法,因此爲每個wiki頁面單獨調用是唯一的方法。

0

Rails的包裝屬性的方法,因此很難說在您使用屬性它僅僅是一個方法安裝了Python 3,蟒蛇,管理平臺:

PS。

Here你可以看到wiki_page有一個內容和here你可以看到text方法定義(屬性text屬於內容!)。

我沒有經驗與python-redmine一起工作,但我可以假設您需要撥打page.content.text而不是page.text。或者以其他方式取page.content