2009年1月30日金曜日

Blogger Data API Developer's Guide: PHP Hello, world!

I am on the intarweb!


http://code.google.com/intl/ja/apis/blogger/docs/1.0/developers_guide_php.html

c:\php\php.ini
include_path = ".;c:\php\ZendGdata-1.7.3\library"
C:\php\ZendGdata-1.7.3\demos\Zend\Gdata>c:\php\php Blogger.php -- --user=xxx --pass=xxxx
Note: This sample may Create, Read, Update and Delete data stored in the account provided.  Please exit now if you provi
ded an account which contains important data.

0 Tech memo
1 web2000

Selection: 0
Creating a post.
Creating a draft post.
Updating the previous post and publishing it.
The new title of the post is: Hello, world, it is.
The new body of the post is: There we go.
Adding a comment to the previous post.
Added new comment: I am so glad this is public now.
Adding another comment.
Added new comment: This is a spammy comment.
Deleting the previous comment.
Printing all posts.
0 Hello, world, it is.
1 Hello, world!
2 Mambo / Install Maniax2008
3 Joomla! / Install Maniax2008
・・・
23 multipart/form-data
24 it's not found as __builtin__.instancemethod
Printing posts between 2007-01-01 and 2007-03-01.
Deleting the post titled: Hello, world, it is.

C:\php\ZendGdata-1.7.3\demos\Zend\Gdata>
 


blogger new posts, setting the scheduled post date and categories
http://groups.google.com/group/bloggerDev/browse_thread/thread/a1eee09632f7eb9e?pli=1

public function createPost($title, $content, $isDraft=False)
{
// We're using the magic factory method to create a Zend_Gdata_Entry.
// http://framework.zend.com/manual/en/zend.gdata.html#zend.gdata.introdduction.magicfactory
$entry = $this->gdClient->newEntry();
$entry->title = $this->gdClient->newTitle(trim($title));
$entry->content = $this->gdClient->newContent(trim($content));
$entry->content->setType('text');
$entry->category = array(
$this->gdClient->newCategory('this is a label', 'http://www.blogger.com/atom/ns#'),
$this->gdClient->newCategory('this is another label', 'http://www.blogger.com/atom/ns#'));
$uri = "http://www.blogger.com/feeds/" . $this->blogID . "/posts/default";

1 日に多数の投稿を行う場合は、確認用の文字の入力を求められます。 確認用の文字は、24 時間が経過すると自動的に削除されます 
このためのエラー
Fatal error: Uncaught exception 'Zend_Gdata_App_HttpException' with message 'Expected response code 200, got 400 Blog has exceeded rate limit or otherwise requires word verification for new posts' in C:\php\ZendGdata-1.7.3\library\Ze nd\Gdata\App.php:644

Migration Python2.7への移行

1. 以前のプログラムのソースをダウンロードして、 app.xml を変更して deployする 503 python -V // まず Mac にインストールされている python のバージョンを確認 504 pwd 505 curl https://sdk.cl...