PHPでmixiのプロフィール写真を変更するよ。

PHPmixiのプロフィール写真を変更するよ。

mixiにアップしているプロフィール写真を削除して、新しい写真をアップするプログラムです。


mixiのプロフィール写真は3枚までアップできますが、
「メイン写真」にする処理を省いているため、
1枚だけアップした状態にしか対応してません。


エラー処理とかも省いているので適宜対応してくださいね。。

<?php
include("PHP_Mixi.php");

//mixiにログインして、プロフィール写真変更ページ取得
$mixi = new PHP_Mixi( "mixiのID", "mixiのパスワード" );//←自分のID,パスワードを設定してください。
$mixi->login("edit_photo.pl");
$html = $mixi->contents["http://mixi.jp/edit_photo.pl"];

//プロフィール画像を削除
preg_match("/delete_photo.pl\?number=[0-9]+&post_key=[0-9a-z_]+/", $html, $match);
$html = $mixi->fetch($match[0]);



//新しい画像をアップ
$ImgFileName = "画像ファイルへのパス";

$file['photo'] = $ImgFileName;
preg_match('/post_key" value="(.+?)"/', $html, $match);
$post['mode']     = 'commit';
$post['post_key'] = $match[1];
$post['submit']   = 'submit';
$post['id']       = $mixi->my_info('id');

$mixi->snoopy->set_submit_multipart();
$mixi->submit("edit_photo.pl", $post, $file);
?>

使用しているライブラリ

PHP_Mixi.php
http://riaf.s47.xrea.com/dev/PHP_Mixi.phps


Snoopy.class.php
http://sourceforge.net/projects/snoopy/


それとPEARを少々

2010/11/05 追記

mixiの仕様が変わったので、今はこれ使えません。