「twitpic.dms」の版間の差分

提供: Yourpedia
移動: 案内検索
(ページの作成: Irvineを使ってTwitpicの画像を落とすためのスクリプト。サムネイル画像が表示されるページや、URLが貼られたTwitterのページ…)
 
(Mario Yonezawa (トーク) による版 363310 を取り消し)
 
(2人の利用者による、間の8版が非表示)
1行目: 1行目:
[[Irvine]]を使って[[Twitpic]]の画像を落とすためのスクリプト。サムネイル画像が表示されるページや、URLが貼られた[[Twitter]]のページから「IrvineへすべてのURLを送る」で使う。
+
[[Irvine]]を使って[[Twitpic]]の画像を落とすためのスクリプト。サムネイル画像が表示されるページや、URLが貼られた[[Twitter]]のページから「IrvineへすべてのURLを送る」で使う。FULL SIZE画像を落とせるように改良。本スクリプトは「[[t-co.dms]]」からの呼び出しにも使われる。2012年11月28日以降にFULL SIZE画像を落とせない様になった仕様変更にも対応。
#[ttp://mxmkitchen.com/2009/03/13/2357.php ここ]からIrvineとDorothy2.zipをDL、インストールする
+
#[http://mxmkitchen.com/2009/03/13/2357.php ここ]からIrvineと[[Dorothy2]].zipをDL、インストールする
 
#「(Irvineが有るフォルダ)¥Dorothy2¥program¥」に「twitpic.dms」を以下の内容で作成する
 
#「(Irvineが有るフォルダ)¥Dorothy2¥program¥」に「twitpic.dms」を以下の内容で作成する
 
#Irvineを起動後、上記サイトに出てる設定を行う
 
#Irvineを起動後、上記サイトに出てる設定を行う
9行目: 9行目:
 
//Dorothy2
 
//Dorothy2
 
//caption=twitpic
 
//caption=twitpic
//version=0.01
+
//version=0.02
 
//hint=twitterのページ・twitpicのサムネイルページからURLを渡してください
 
//hint=twitterのページ・twitpicのサムネイルページからURLを渡してください
//match=http://twitpic.com/
+
//match=http://(www.)?twitpic.com/
 
//author=Abcdefgh
 
//author=Abcdefgh
 
//path=program
 
//path=program
17行目: 17行目:
 
//end
 
//end
 
//created 22,Jan.,2011 by Abcdefgh
 
//created 22,Jan.,2011 by Abcdefgh
 +
//modified 17,May.,2011 by Abcdefgh
 +
//modified 07,Jan.,2012 by Abcdefgh
 +
//modified 09,Nov.,2012 by Abcdefgh
 
//ファイル名の単純変換が不可能な為
 
//ファイル名の単純変換が不可能な為
 +
//t-co.dmsから呼び出される
  
 
function(){
 
function(){
 
println('twitpic.dms start');
 
println('twitpic.dms start');
// 画像紹介ページをダウンロード
+
// 画像紹介ページURLをFULL SIZEページのURLに変換
 +
headers.Referer = urlinfo.url;
 +
var url = new URL(urlinfo.url + '/full');
 +
urlinfo.url = url.url;
 +
headers.host = url.host;
 +
// FULL SIZEページをダウンロード
 
common_load('download');
 
common_load('download');
 
var http = download(urlinfo.url);
 
var http = download(urlinfo.url);
28行目: 37行目:
 
}
 
}
 
// 本画像URLを抽出
 
// 本画像URLを抽出
if (!http.data.match(/src=\"([^"]+\/full\/[^"]+)\"/)) {
+
if (!http.data.match(/src=\"([^"]+(full|large|scaled)[^"]*[.](jpg|png|gif)[^"]*)\"/)) {
 
println('error---> オリジナルサイズの画像が見つかりません');
 
println('error---> オリジナルサイズの画像が見つかりません');
 
exit();
 
exit();
34行目: 43行目:
 
var title=RegExp.$1;
 
var title=RegExp.$1;
  
 +
headers.Referer = urlinfo.url;
 
var url = new URL(title);
 
var url = new URL(title);
 
urlinfo.url = url.url;
 
urlinfo.url = url.url;
 
headers.host = url.host;
 
headers.host = url.host;
 
//ファイル名を抽出
 
//ファイル名を抽出
if (!title.match(/([^\/?]+)[?].+$/)) {
+
if (!title.match(/([^\/?]+)([?].+)?$/)) {
 
println('error---> ファイル名が見つかりません');
 
println('error---> ファイル名が見つかりません');
 
exit();
 
exit();

2019年2月7日 (木) 23:47時点における最新版

Irvineを使ってTwitpicの画像を落とすためのスクリプト。サムネイル画像が表示されるページや、URLが貼られたTwitterのページから「IrvineへすべてのURLを送る」で使う。FULL SIZE画像を落とせるように改良。本スクリプトは「t-co.dms」からの呼び出しにも使われる。2012年11月28日以降にFULL SIZE画像を落とせない様になった仕様変更にも対応。

  1. ここからIrvineとDorothy2.zipをDL、インストールする
  2. 「(Irvineが有るフォルダ)¥Dorothy2¥program¥」に「twitpic.dms」を以下の内容で作成する
  3. Irvineを起動後、上記サイトに出てる設定を行う
    1. 「ツール」→「メインメニュー」→「動画ダウンロード2設定」で「twitpic」にチェックを入れて、「ファイル」→「保存して終了」をクリック、それ以外は同様
  4. 後は、ほぼ上記サイトの説明通り
//Dorothy2
//caption=twitpic
//version=0.02
//hint=twitterのページ・twitpicのサムネイルページからURLを渡してください
//match=http://(www.)?twitpic.com/
//author=Abcdefgh
//path=program
//priority=500
//end
//created 22,Jan.,2011 by Abcdefgh
//modified 17,May.,2011 by Abcdefgh
//modified 07,Jan.,2012 by Abcdefgh
//modified 09,Nov.,2012 by Abcdefgh
//ファイル名の単純変換が不可能な為
//t-co.dmsから呼び出される

function(){
	println('twitpic.dms start');
	// 画像紹介ページURLをFULL SIZEページのURLに変換
	headers.Referer = urlinfo.url;
	var url = new URL(urlinfo.url + '/full');
	urlinfo.url = url.url;
	headers.host = url.host;
	// FULL SIZEページをダウンロード
	common_load('download');
	var http = download(urlinfo.url);
	if(http.responseHeader.code != 200){
		return retry('error--->' + http.responseHeader.code);
	}
	// 本画像URLを抽出
	if (!http.data.match(/src=\"([^"]+(full|large|scaled)[^"]*[.](jpg|png|gif)[^"]*)\"/)) {
		println('error---> オリジナルサイズの画像が見つかりません');
		exit();
	}
	var title=RegExp.$1;

	headers.Referer = urlinfo.url;
	var url = new URL(title);
	urlinfo.url = url.url;
	headers.host = url.host;
	//ファイル名を抽出
	if (!title.match(/([^\/?]+)([?].+)?$/)) {
		println('error---> ファイル名が見つかりません');
		exit();
	}
	Dorothy.fileName = RegExp.$1;
}