Safariで表示中のページのソースを取得するphp

Safariで表示しているページ、タブブラウジング中であればフロントになっているタブで表示しているページ、のソースコードをApple Scriptで取得して、phpで利用するスクリプト。wgetcurl、あるいはphpのfile()関数でURLを指定して簡単に取得できるページは良いんだけど、クッキーの処理やら認証やら色々面倒なページに関しては、Safariで表示しておいてソースを取得した方が早いことが多いので、こういうdirtyなことをする時が(^_^;

<?php
function get_html_source(){
	$args = 'tell application "Safari"
		try
			set theSource to (the source of document 1)
		on error
			beep 2
			return
		end try
	end tell
	set the clipboard to theSource';

	exec("/usr/bin/osascript -e '$args'", $output, $return);
	$ret = exec("pbpaste", $output);

	return($output);
}

$bf = get_html_source();
foreach($bf as $key => $ln){
	if(preg_match('/hoge/', $ln, $c)){
		var_dump($c);
	}
}
?>
タイトルとURLをコピーしました