我正在尝试捕获此页面上的访问次数,但python会返回没有文本的标记。
这就是我所做的。
import requests
from bs4 import BeautifulSoup
r = requests.get("http://www.kijiji.ca/v-2-bedroom-apartments-condos/city-of-halifax/clayton-park-west-condo-style-luxury-2-bed-den/1016364514")
soup = BeautifulSoup(r.content)
print soup.find_all("span",{"class":"ad-visits"})
答案 0 :(得分:2)
您尝试抓取的值由javascript填充,因此beautfulsoup
或requests
在这种情况下无效。
您需要使用selenium
之类的内容来获取输出。
from bs4 import BeautifulSoup
from selenium import webdriver
driver = webdriver.Firefox()
driver.get("http://www.kijiji.ca/v-2-bedroom-apartments-condos/city-of-halifax/clayton-park-west-condo-style-luxury-2-bed-den/1016364514")
soup = BeautifulSoup(driver.page_source , 'html.parser')
print soup.find_all("span",{"class":"ad-visits"})
Selenium
会返回已呈现的网页来源,然后您可以使用beautifulsoup
获取值
[<span class="ad-visits">385</span>]