2016-05-17 9 views
0
def parser(self): 
    r = requests.get(self.url) 
    self.soup = BeautifulSoup(r.content, "lxml") 

しかし、私がスープを印刷するとき、私が本当に欲しいWebソースコードとは違うことがわかりました。python parse libがウェブソースコードを正しく返していない

例えば、これは、以下のWebソースコードです:

{div class="zh-question-followers-sidebar"} 
{div class="zg-gray-normal"} 

{a href="/question/24269892/followers"}{strong}109141{/strong}{/a} 
people focus on the questions 

{/div} 

しかし、私は、XMLを取得beautifulsoup使用する場合、それはコードをそのように表示されません。 代わりに、それは次のように示しています。なぜ、どのように右のソースコードを取得するために私に言うことができる

{div class="zm-side-section"} 
{div class="zm-side-section-inner zg-gray-normal" id="zh-question-side-header-wrap"} 
{button class="follow-button zg-follow zg-btn-green" data-follow="q:m:button" data-id="1889792"}focus question{/button} 

109143 
people focus on the questions 

{/div} 
{/div} 

答えて

1

すべてのクライアントに同じページが配信されているわけではありません。 あなたは人気のデスクトップブラウザのそれにあなたの要求のユーザーエージェントを設定する必要があります。

headers = {'User-Agent': '''Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) 
          AppleWebKit/537.36 (KHTML, like Gecko) 
          Chrome/39.0.2171.95 Safari/537.36'''} 

response = requests.get(url, headers=headers) 
+0

をヘッダを追加することによって、私は今のWebのソースコードを取得することができ、感謝! –

関連する問題