2

私は歌詞ボットをpythonで作成しました。私はrobobrowserを使ってgenius.comから歌詞を捨てていますが、グループに歌詞を送っていません。私の歌詞ボットはサーバーに文字列を送信しません

if (parser.getCommand() == 'GroupMESG'): 
    if(parser.getPayload().lower()[:7]=='!lyrics'): 
     #Send wait message in the group 
     parser.sendGroupMessage(parser.getTargetID(), "/me Please wait.. I am finding your song.") 
     browser = RoboBrowser(history=True) 
     browser.open('http://genius.com/') 

     # Search for Porcupine Tree 
     form = browser.get_form(action='/search') 
     form    # <RoboForm q=> 
     form['q'].value = parser.getPayload().lower()[8:] 
     browser.submit_form(form) 

     # Look up the first song 
     songs = browser.select('.song_link') 
     browser.follow_link(songs[0]) 
     lyrics = browser.select('.lyrics') 
     lyrics[0].text 

     print(lyrics[0].text) ## it prints the songs 

     ##it is not sending lyrics in the group :(
     parser.sendGroupMessage(parser.getTargetID(), lyrics[0].text) 
+1

私は、あなたの質問にあなたのイメージを追加しましたが、それは、テキストの代わりに、イメージとしてあなたのエラーを貼り付けるためにはるかにお勧めします。 – Lafexlos

+0

ありがとう@Lafexlos – Bharat

+2

それは警告ではなく、それを修正する方法を教えてくれます。 –

答えて

0

2行目の入力ミスですか?これはおそらくあなたにPythonコードにエラーを与えます。

form = browser.get_form(action='/search') 
form    # <RoboForm q=> 
form['q'].value = parser.getPayload().lower()[8:] 
1

警告を取り除くには、the issue discussion on githubのアドバイスに従ってください。

RoboBrowserコンストラクタにパーサを渡します

browser = RoboBrowser(parser='html.parser') 
+0

ありがとうございました..警告を解決しましたが、私のプログラムでは歌詞をインスタントメッセンジャーサーバーに送信できません。コマンドラインで歌詞を印刷して、それをサーバーに送ることができないのはなぜですか? – Bharat

+1

主な問題がグループにテキストを送信している場合は、画面のスクラップを忘れ、インスタントメッセンジャーに集中してください。あなたの例を可能な限り小さくしてください。 [mcve]の作成方法を参照してください。 –

関連する問題