*

阪神タイガース関連新聞記事のTweetとHtmlタグ

公開日: : 最終更新日:2015/11/24 PHPで実際開発して

 

これは、僕のメモです。

1.前提その1:
まず、プログラム動かす環境がパソコンの中に必要です。
*一応アップしましたが、外の方がファイルの内容を更新するのでセキュリティ上危険。
すいません、1週間くらいで閉じます。
Apacheのサーバ、スクリプト言語PHP が必要
インストール方法は
2.前提その2:
Feedly(http://feedly.com/)というRSSリーダに、購読したいサイトを登録します。
僕の場合(=このプログラムの場合)
1)新着コラム – Number Web
2)デイリースポーツOnline 主要ニュース
3)東スポWeb – 東京スポーツ新聞社
4)Yahoo!ニュース・トピックス – スポーツ

画面01->画面02 の検索ボックスに 上記1)~4)までの文字列を入れると登録できます。

01

 

画像01

 

02

 

画像02

 

03

 

画面03

 

*画面03 が僕のRSS登録した後のもの

 

3.RSSに目を通す&登録したいurlを開く

1)僕の場合、阪神関係 だと 右クリックでメニューを表示させた後「新しいタブで開く」。
ロッテファンの方であれば、ロッテに関係のありそうなタイトルを右クリックでメニューを表示させた後「新しいタブで開く」。
これは、人間が自分で対象の記事を決めるしかありません。

2)画面04が開いた状態です。

 

04

 

画面04

4.ApacheのサーバとPHPをインストールしたパソコンの

htdocs(Webサーバのドキュメントルートといいます)にnewsというフォルダを作り
そのフォルダに

1)このページにあるプログラムリストをindex12.phpとして保存。、

2)han_tag.txt、han_tweet.txt の2つのテキストファイルを
何も書かれていない状態で保存してください。

3)http://localhost/news/index12.php
でファイルを開いてください。
幽霊文字(文字化け)していたら、ブラウザから、エンコードしてください。
5.3で開いたタブのアドレスバーにあるurlをコピーし、(画面04)

1)index12.php のテキストボックスにペーストして
「投稿する」ボタンをクリックしてください。
この段階で、テキストファイルに内容が書き込まれます。

2)これをタブの数だけ(登録したいURLの数だけ)繰り返してください。
*エラーメッセージは無視してください。
6.サイトにアップする

1)「タグ表示用」のリンクをクリックすると、コピー&ペーストすればいいだけのhtml形式のソースが表示されます。
(画面05)

05

 

画面05

 

2)この文字列をコピーしてください。

3)Wordpressの該当ページを編集モードで開き、テキスト モードでペーストしてください。
*Wordpressは、「Wordpress入門」->検索 あたりでわからなければ勉強してください。
*参考:画面06

06

画面06

7.Twitterでつぶやく

1)「Tweet用表示」のリンクをクリックすると、コピー&ペーストすればいいだけのTwitter投稿文が表示されます。
(画面07)

07

画面07

 

2)この文字列を1行ごとにコピーしてください。

3)Twitterから投稿してください。
(画面08)

08
8.最後に、
http://localhost/news/index12.php
の「deleteする」ボタンをクリックしてください。
テキストファイルが初期状態の何も書かれていないものに変わります。
(画面09)

09

 

 

画面09

ソースコード
<html>
<head><title>PHPで阪神タイガースの新聞記事TweetとHTMLタグ作成</title></head>
<body>

<p>1.記事のURLを投稿する</p>

<form method="POST" action="<?php print($_SERVER['PHP_SELF']) ?>">
<div style = "text-align:center"><input type="text" name="personal_name" size="50"></div><br><br>
<input type="submit" name="btn1" value="投稿する">
<br /><br /><br /><br />
</form>

<br /><br /><br /><br />

<?php

print('<hr>結果表示<br>');

if($_SERVER["REQUEST_METHOD"] != "POST"){
    print('GETによる要求です');
}else{
	print('URLは<br />');
	$urladd = $_POST['personal_name'];
	echo $urladd . '<br />';
}



include "simple_html_dom.php";
$html = file_get_html($urladd);

//東スポ http://www.tokyo-sports.co.jp/entame/gravia/398533/ でできた
$urladd_spe = substr($urladd, 0, 23);

switch ($urladd_spe){
case 'http://www.tokyo-sports':

	foreach($html->find('#report_days') as $element){
		$date = $element->plaintext;
	}


	foreach($html->find('title') as $element){
		echo '<br />' . $element->plaintext . $date . ' 東京スポーツ<br />';
	}
	$text = $date . " 東京スポーツ<br />" . "\r\n\r\n";
	$text = $text . "<a href='" . $urladd . "' target='_blank'>" . $element->plaintext . "</a><hr /><br />";

	$text_tweet = $element->plaintext . $date . " 東京スポーツ" . " #阪神タイガース・オフシーズン速報  " . $urladd . "\r\n\r\n\r\n";

	break;

case 'http://www.daily.co.jp/':
	foreach($html->find('.date') as $element){
		$date = $element->plaintext;
	}

	foreach($html->find('h1') as $element){
		echo '<br />' . $element->plaintext . $date . ' デイリースポーツ<br /><br />';
	}
	$text = $date . " デイリースポーツ<br />" . "\r\n\r\n";
	$text = $text . "<a href='" . $urladd . "' target='_blank'>" . $element->plaintext . "</a><hr /><br /><br />";

	$text_tweet = $element->plaintext . $date . " デイリースポーツ" . " #阪神タイガース・オフシーズン速報  " . $urladd . "\r\n\r\n\r\n";

	break;

case 'http://news.yahoo.co.jp':
	foreach($html->find('.date') as $element){
		$date = $element->plaintext;
	}

	//foreach($html->find('h2') as $element){
	$element = $html->find('h2',0);
	echo '<br />' . $element->plaintext . $date . ' YAHOO!ニュース<br /><br />';
	$text = $date . " YAHOO!ニュース<br />" . "\r\n\r\n";
	$text = $text . "<a href='" . $urladd . "' target='_blank'>" . $element->plaintext . "</a><hr /><br /><br />";

	$text_tweet = $element->plaintext . $date . " YAHOO!ニュース" . " #阪神タイガース・オフシーズン速報  " . $urladd . "\r\n\r\n\r\n";

	break;

/* 飛ばす 2015.10.23
case 'http://www.nikkansports':
	foreach($html->find('h1') as $element){
		$test01 = strlen($element);
		echo $test01 . '<br />';
		if(strlen($element) > 20  ){
			echo '<br />' . $element->plaintext . ' 日刊スポーツ<br />';
		}
	}
	break;
*/

case 'http://number.bunshun.j':
	foreach($html->find('.posted') as $element){
		$date01 = $element->plaintext;
		$date = str_replace ("posted","",$date01);
	}

	foreach($html->find('h2') as $element){
		echo '<br />' . $element->plaintext . $date . ' Number<br />';
	}
	$text = $date . " Number<br />" .  "\r\n\r\n";
	$text = $text . "<a href='" . $urladd . "' target='_blank'>" . $element->plaintext . "</a><hr /><br />";

	$text_tweet = $element->plaintext . $date . " Number" . " #阪神タイガース・オフシーズン速報  " . $urladd . "\r\n\r\n\r\n";


	break;

case 'http://hanshintigers.jp':
	foreach($html->find('dd') as $element){
		$date01 = $element->plaintext;
		$date = str_replace ("更新","",$date01);
	}
	foreach($html->find('dt') as $element){
		echo '<br />' . $element->plaintext . $date . ' 阪神タイガース公式サイト<br />';
	}
	$text = $date . " 阪神タイガース公式サイト<br />" .  "\r\n\r\n";
	$text = $text . "<a href='" . $urladd . "' target='_blank'>" . $element->plaintext . "</a><hr /><br />";

	$text_tweet = $element->plaintext . $date . " 阪神タイガース公式サイト" . " #阪神タイガース・オフシーズン速報  " . $urladd . "\r\n\r\n\r\n";


	break;

default:
  echo '無いです';
}


$fp = fopen("han_tag.txt", "a");
fwrite($fp, $text);
fclose($fp);

$fp_tweet = fopen("han_tweet.txt", "a");
fwrite($fp_tweet, $text_tweet);
fclose($fp_tweet);
?>



<br /><br /><br />
------------入力が終わった内容を表示-----------------------
<p>2.Tweet用とHTMLタグの内容を表示</p>

<br /><br /><br />

<a href="han_tag.txt">タグ用表示</a>
<br /><br /><br /><br />
<a href="han_tweet.txt">Tweet用表示</a>



<br /><br /><br />
------------入力が終わった内容を表示した後削除-------------
<p>3.最後にTweet用とHTMLタグの内容を削除</p>
<br /><br /><br />

<form method="POST" action="<?php print($_SERVER['PHP_SELF']) ?>">
<input type="hidden" name="koui" value="sakuzyo">
<input type="submit" name="btn2" value="deleteする">
<br /><br /><br /><br />
</form>



<?php
$delete = $_POST['koui'];

if ($delete =="sakuzyo") {
	//echo 'aiueo';
	$fp = fopen("han_tag.txt", "w");
	fclose($fp_tweet);

	$fp = fopen("han_tweet.txt", "w");
	fclose($fp_tweet);
} 
?>




</body>
</html>
</html>

 

 

 

 
スポンサーリンク


 

関連記事

PHPからprepareステートメントを使ってテーブルを作成する

これは僕のメモです。 「PHPからprepareステートメントを使ってテーブルを作成す

記事を読む

エラー:Warning: Invalid argument supplied for foreach() …

SQLを発行した後、配列に何も入っていない、と言われた事とほぼ同じ。 エラー:Warning:

記事を読む

no image

OpenSSLが有効になっていない」

レンタルサーバでは何も問題ない、localhost(apache2.2,PHP5.3)だと以下のエラ

記事を読む

データベースを配列に入れて、その中で範囲指定する

約600あるレコードのうち、 100から200の間のレコードだけ表示させる、 結構てこづりました

記事を読む

DOMオブジェクト、find関数、foreach文

  *プログラムリストはこのページの最後にあります。 前段(参考)

記事を読む

@file_get_html($address)でもエラーになる

これは、僕のメモです。これは、僕のメモです。   これは、僕のメモです。

記事を読む

no image

PHP雑記

1.scheme(スキーム、スキーマ):構造、機関のこと。データベースと同義語。 *僕は テーブル

記事を読む

simple_html_dom.phpがおかしい

僕のメモです。 原因不明ですが、スクレイピングをsimple_html_dom.phpでしよう

記事を読む

テキストファイルの操作で改行コードを入れる

  これは、僕のメモです。   1.何も書いていないまっさらな

記事を読む

no image

行列世代と配列

PHPを勉強してみて思う事 僕らの世代は、「行列」を習っている。 今、ネット用のプログラム書こう

記事を読む

プレースホルダ(プリペアド・ステートメント)で2つのテーブルを比較するときの注意

これは、自分のメモです。(自分の勉強用フォルダren/ren112.p

@file_get_html($address)でもエラーになる

これは、僕のメモです。これは、僕のメモです。  

simple_html_dom.phpがおかしい

僕のメモです。 原因不明ですが、スクレイピングをsimple_h

MYSQLのコマンド入力で「;」セミコロンを入力し忘れた時抜け出す方法

これは僕のメモです。   MYSQLのコマンド入

MySQLのコマンドプロンプトでのバックアップとリストア

これは自分のメモです バックアップ 1.管理者 で コマンドプロン

→もっと見る

PAGE TOP ↑