2017-06-28 12 views
0

1、ポストにメインページを取得し、最初のコンテンツ 3を入力し、子どもたちのページに次のコンテンツのpython3のbeautifulsoup4 - 2入力値

を取得し、私は隠された記事を見つけたproperty.BUT私が取得することはできません実際には価値がある。 私はすべてのものが入力値を取得しようとしますが、動作しません。 Similar question:

import bs4,requests,os 

url = 'http://www.qiushibaike.com' 
#request the main page 
res = requests.get(url) 
res.raise_for_status() 

soup = bs4.BeautifulSoup(res.text,"html.parser") 

qsMain = soup.select('a[class="contentHerf"]')[0] 
print(qsMain) 
url = 'http://www.qiushibaike.com' + qsMain.get('href') 

#enter the first content 
res = requests.get(url) 
res.raise_for_status() 
print(url) 
subLink = bs4.BeautifulSoup(res.text,"html.parser") 

#get Children page 
s = subLink.select('input')[0].get('value') 
print(s) 
s1 = subLink.find("div", {"class":"article block untagged noline mb15"}) 
print(s1) 

here the INPUT I want find

答えて

1

あなたの問題はここにある:特に

subLink.select('input')[0] 

あなたの選択だけで[0]を取得します。多くのinput要素があり、必要なものが最初ではありません。最初は<input id="hid" type="hidden">で、先頭はs1です。私はこの方法を試していた

s = subLink.find(id="articleNextLink").get('value') 
+0

、しかし、私は価値がない「記事/ 118839782」のランダムな値であるが見つかりました:

は確実にちょうどそうのように、そのidを使用し、正しいタグを検索するには。 like 'article/118743286' – Nomiki

+1

@Nomikiはい、値はランダムです。 https://www.qiushibaike.com/article/119222287を開き、隠れた入力値を見てください。今度は新しいプライベートブラウジングウィンドウで記事を再度開いて(クッキーがないので)、値の変更が表示されます。彼らはリンクを一貫させるように訪問者を追跡しますが、それらはランダムです。 'requests.get'は毎回新しいセッションを作成し、それが常に変化するのです。 –

+0

深いおかげで! この問題は長い間困っています。ありがとうございました! – Nomiki

関連する問題