2ちゃんねる スマホ用 ■掲示板に戻る■ 全部 1- 最新50    

■ このスレッドは過去ログ倉庫に格納されています

Irvine Part35

1 :名無し~3.EXE:2016/08/20(土) 23:48:27.81 ID:lpmEkPMM.net
Irvine(アーバイン・アーヴィン・いるびね?)は、ウェブ・FTPのファイルを
ダウンロードするためのソフトウェアです。

Irvineで簡単ダウンロード、なんて説明があったら、それは嘘です。
Irvineの使用には、TCP/IP、HTTP、ECMAScript、HTML、文字コード、
正規表現、等の知識が必要です。
ブラウザや他のダウンロードソフトで落とせるファイルが、Irvineで
落とせない場合は、まずこれらの専門知識を習得してください。

JWORDは非インストール推奨です。
※Irvineのアーカイブを展開後、jwordフォルダを削除してからirvine.exeを実行すれば
 JWordのインストール画面は表示されません。

過去ログ・その他は>>2-4ぐらい。

公式
http://hp.vector.co.jp/authors/VA024591/
マニュアル
http://hp.vector.co.jp/authors/VA024591/doc/manual.html

前スレ
Irvine Part34
http://echo.2ch.net/test/read.cgi/win/1437882775/l50

401 :名無し~3.EXE:2017/05/30(火) 21:31:17.22 ID:OZCnk6Z4.net
replaceで入れ込もうにもエラーが出るのでなんともならない状態です
外部エディタで読み込ませて保存するでもいいのかもしれませんが
そうするとm3u8を開いて確認して手動で対象URLをキックするのとあまり変わらないように感じます

改行コードの問題が解決すればまた少し自動化できます
良い方法ありましたらアドバイスお願いします

402 :名無し~3.EXE:2017/05/30(火) 22:17:18.96 ID:W2/jH+eq.net
var lf =String.fromCharCode(10);

a=new Strings("aaa"+lf+"bbbaaa"+lf+"cccaaaa"+lf+"aaa"+lf+"aaa"+lf);
alert(a.length);
LFでも動くと思うけど?

403 :名無し~3.EXE:2017/05/30(火) 22:42:20.27 ID:08USmIks.net
>>402
すでにある文字列に対して置き換えたい感じです
自分でデータテーブルを作りません

var file = new Strings(aaabbbaaacccaaa);//ここは固定です
var lf =String.fromCharCode(10);
file = file.replace(/aaa/g,'aaa' + lf);

最近m3u8が多くなりましたが例えばyouflix.isというサイトです
ttp://youflix.is
動画のページのソースにマニフェストがあります
マニフェストはttp://fileX.youflix.is/〜〜〜〜〜〜/master.m3u8
これを取得するとメモ帳だと1行表示です
それをLFで改行したいのです

中を見ると2つから3つの画質があるようです
BANDWIDTHをmatchで持ってきて一番高画質のものや二番目とか選びたいです

ぐぐったらrentanさんのところにはwebはCRLFじゃないとダメとあったので無理なのでしょうか?
Irvineでできないのであればあきらめます

404 :名無し~3.EXE:2017/05/30(火) 23:12:01.97 ID:W2/jH+eq.net
url="http://file6.youflix.is/joO5VpbMgY/master.m3u8";
h=new HTTP;
d=h.get(url);
alert(d);

a=new Strings(d);
alert(a.length);
動くよ

405 :名無し~3.EXE:2017/05/30(火) 23:36:36.24 ID:I8H6znKr.net
>>404
var http = download(m3u8);
downloadで取得してたからですかね

記載ソースをsaveToFileしてメモ帳で改行確認しました
ちょっとやってみたらURLが長いからかHTTP get errorが出てたので無理かもしれません
体力の限界に到達しましたのであとで悪あがきしてみます
ありがとうございました

406 :名無し~3.EXE:2017/05/31(水) 13:37:21.04 ID:VIVx/7lM.net
ついっぷるの画像を一括ダウンロードできるスクリプトください

407 :名無し~3.EXE:2017/05/31(水) 19:29:02.41 ID:A7a0kyrC.net
>>404
new HTTPではURLが長いと文字数制限?で持ってこれないようでした
> a=new Strings(d);
こちらを利用して
var m3u8 = "長いURL";
var http = download(m3u8);

var file = new Strings();
file.add(http.data);
↓上を下に変更でうまくいきました
var file = new Strings(http.data);

よくわかってませんが変数の最初ではLFがCRLFに変換されますが後から入れるとLFのままみたいです
これもある意味バグみたいなもんですかね(いいバグ?仕様?)
結果を見るとヒントをくれてたのですかね
気づかずすみませんでした

これまでデバックにprintlnを使ってましたがalert();のおかげでかなり楽になりました
予定していた部分まではなんとか盛り込むことができました
重ね重ねありがとうございました

408 :名無し~3.EXE:2017/05/31(水) 19:36:22.03 ID:/jNyeifh.net
>>407
いいってことよ

409 :名無し~3.EXE:2017/05/31(水) 19:53:47.17 ID:CWW8fB5b.net
おれの作業メモ

正規表現を使いこなせるとソースに書いてあるのは大概いけそうだけどいまだに馴染めない
タイトルゲットしたりURLゲットしたり
BANDWIDTHの値を取り出すときはこんな感じでいけました
for(i in file) { //m3u8ファイルを1行ずつ見ていく
if (file[i].match(/BANDWIDTH=([^,]+)/)) { //その行にBANDWIDTH=XXXXXXXX,があるなら値(XXXXXXXX)をゲット?
var bandwidth = RegExp.$1;

正規表現マスターはマトリックスみたいに緑の文字が絵に見える感じなんでしょうね
答えがひとつじゃない?ので余計つかみにくいです

次の行(m3u8リストでBANDWIDTHの次の行がURLになってる)はfile[i+1]だとうまいくいかなかったのでfile[(i+1)]としました
5行目(0からだと4?)の処理の場合
file[i+1]は5+1でfile[(i+1)]は6
数値と文字を明示しないとだめ?

処理したいマニフェストのURLがわかればffmpeg.exeに渡す(バッチファイル作成かコマンド実行(次々処理させると帯域不足になりがち))か
そのリストから分割tsファイル的なものをDLしてローカルで結合
youflixの場合は下側に高画質なマニフェストがあるのでfile.lengthで行数を取得して直接指定するのもできますかね
マニフェストの順番が昇順じゃなかったりする場合はBANDWIDTHで見るしかないですかね

終わり

410 :名無し~3.EXE:2017/06/01(木) 00:33:37.05 ID:9v7tjSYA.net
>>408
誰だよw

>>407
出来たみたいだね、おめでとう。

youflix 0.1 試しに作ってみた。

総レス数 1009
283 KB
新着レスの表示

掲示板に戻る 全部 前100 次100 最新50
read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★