我正在尝试解析this website并在内容框card__body
中使用BeautifulSoup.find
获取有关自动的信息,但它找不到所有类。我也尝试了webdriver.PhantomJS()
,但它也没有显示任何内容。
这是我的代码:
from bs4 import BeautifulSoup
from selenium import webdriver
url='http://www.autobody.ru/catalog/10230/217881/'
browser = webdriver.PhantomJS()
browser.get(url)
html = browser.page_source
soup = BeautifulSoup(html, 'html5lib')
JTitems = soup.find("div", attrs={"class":"content-box__strong red-text card__price"})
JTitems
或
w = soup.find("div", attrs={"class":"content-box card__body"})
w
为什么这种方法不起作用?我该怎么做才能获得有关汽车的所有信息?我使用的是Python 2.7。
答案 0 :(得分:1)
找到您需要信息的table
。然后找到所有tr
并循环遍历它们以获取文本。
from bs4 import BeautifulSoup
from selenium import webdriver
url='http://www.autobody.ru/catalog/10230/217881/'
browser = webdriver.Chrome()
browser.get(url)
html = browser.page_source
soup = BeautifulSoup(html, 'lxml')
price = soup.find('div', class_='price').get_text()
print(price)
for tr in soup.find('table', class_='tech').find_all('tr'):
print(tr.get_text())
browser.close()
browser.quit()