0

ページの URL はwww.nenu.edu.cn/intramural/content/news/110.php
、chrome の get ソース コードを使用していますが、use リクエストと同じではありません。私は requests.get を使用します

u'\r\n<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">\r\n<html xmlns="http://www.w3.org/1999/xhtml">\r\n<head>\r\n<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />\r\n<title>\u4e1c\u5317\u5e08\u8303\u5927\u5b66</title>\r\n<link href="../../images/nenu_news.css" rel="stylesheet" type="text/css" />\r\n</head>\r\n<body>\r\n\r\n<script language="javascript" type="text/javascript"> window.location ="http://www.nenu.edu.cn/intramural/content/news/110.php";</script>'
4

1 に答える 1

2

提供されている HTML の内部をrequests.get見ると、次のスニペットが表示されます。

<script language="javascript" type="text/javascript">
window.location ="http://www.nenu.edu.cn/intramural/content/news/110.php";
</script>

これが意味することは、Chrome がページをロードするときに、ページ内の小さな Javascript コード スニペットがブラウザにナビゲートするように指示することhttp://www.nenu.edu.cn/intramural/content/news/110.phpです。おそらく、Chrome でソースを表示したときに代わりに表示されるのは、そのページの HTML コンテンツです。ただし、requestsブラウザではないため、レスポンスで Javascript を解析して実行することはなく、リテラルのレスポンス テキストが返されるだけです。

そのような単純な。

編集:実際、あなたの質問 (特にタイトル) は非常に下手に書かれています (一般的な明快さと非常に貧弱な英語の文法の観点から)。今後は質問を書くことにもっと力を入れてください。

PS。または同様のトリックを使用してリダイレクトを行うページはwindow.location = ...、完全なブラウザーまたはブラウザー エミュレーターを使用しないとクロールするのが非常に困難です。

于 2013-10-26T08:13:42.750 に答える