質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Q&A

解決済

1回答

2489閲覧

openpyxlでExcelファイルをwordpressに投稿する際のエラーAttributeError: 'Worksheet' object has no attribute 'call'

monmon2

総合スコア17

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

0グッド

0クリップ

投稿2021/09/14 04:12

openpyxlを使ってexcelファイルをwordpressに投稿するコードを組み立てようとしています。
つい昨日まではwordpressに投稿するときのws.call(NewPost(post))は何も問題なく使えていて、wordpressに下書きとして記事を投稿できたのですが、急にエラーが出るようになってしまいました。

私が気づかずにコードを変にいじくってしまったのかもしれませんが、どこが間違っているのか分からないので、どなたかエラーの解消方法を教えてください。

openoyxlは最新にアップデートしました。

pythonfrom

1from wordpress_xmlrpc.methods.posts import GetPosts, NewPost 2from wordpress_xmlrpc.methods.users import GetUserInfo 3from wordpress_xmlrpc.compat import xmlrpc_client 4from wordpress_xmlrpc.methods import media, posts 5import openpyxl 6import ssl 7 8 9ssl._create_default_https_context = ssl._create_unverified_context 10 11client = Client('ブログURL','ID','パス') 12wb = openpyxl.load_workbook('絶対パス') 13 14ws = wb.active 15 16post = WordPressPost() 17 18 19cells = ws['C2:L2'] 20body = [] 21 22for i in cells: 23 for c in i: 24 body.append(c.value) 25 26ct_body = "".join(str(body)) 27 28 29post.title = ws['B2'].value 30post.content = ct_body 31 32post.post_status = 'draft' 33 34ws.call(NewPost(post))

python

1ws.call(NewPost(post)) 2AttributeError: 'Worksheet' object has no attribute 'call'

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ikapy

2021/09/14 04:37

下記確認ください。 ① wb = openpyxl.load_workbook('絶対パス') で、エラーになりませんか。'絶対パス.xlsx'では。 ② ws.call(NewPost(post)) wsにはcallは元々ないのでは。自分は、見つけられなかったです。cellの間違いでは。
monmon2

2021/09/14 04:44

①は.xlsxも入っています。 ②は、私も他の人、複数人のコードを見て真似ているだけですが、cellではなく、callで合っていると思います。実際ws.call(NewPost(post))で投稿できていたので。。
ikapy

2021/09/14 04:52

ppaulさんの回答で納得しました。オブジェクトが間違ってたんですね。そりゃそうなりますね。
guest

回答1

0

ベストアンサー

普通は、

ws.call(NewPost(post))

ではなく、

client.call(NewPost(post))

のようです。

投稿2021/09/14 04:49

ppaul

総合スコア24670

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

monmon2

2021/09/14 04:53

clent.call(NewPost(post))でエラー解消されました!ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問