Python Web Scraping Dynami c Содержимое - PullRequest
0 голосов
/ 08 февраля 2020

Я пытался почистить результаты поиска на kith.com, но получил пример кода скелета. Пытался использовать scrapy, запросы - html и селен, но мне не удалось заставить их работать.

Сейчас мой код:

from requests_html import HTMLSession

session = HTMLSession()
r = session.get("https://kith.com/pages/search-results-page?q=nike&tab=products&sort_by=created")

r.html.render()
print(r)

Из того, что я видел , render () должен получить код html, как он виден в браузере, но я все еще получаю тот же самый "сырой" код.

PD: kith.com - shopify shop

1 Ответ

2 голосов
/ 08 февраля 2020

Селен подходит для такой работы

from selenium import webdriver
from selenium.webdriver.firefox.options import Options

options = Options()
options.headless = True
driver = webdriver.Firefox(options=options)
driver.get('https://kith.com/pages/search-results-page?q=nike&tab=products&sort_by=created')


item_titles = driver.find_elements_by_class_name("snize-title")

print item_titles[0].text
#NIKE WMNS SHOX TL - NOVA WHITE / TEAM ORANGE / SPRUCE AURA

Редактировать:

Если вы хотите получить всю информацию об элементе, элементы div с snize-overhidden класс будет то, что вы хотите захватить. Затем вы можете перебирать их и их подэлементы

...