@vaneys1

Как спарсить содержимое сайта в определенном месте?

Я новичок в этой сфере, в гугле пробовал искать, находил, но что то не подходит
Есть определенный сайт, и мне нужно получить содержимое div class='....' (а оно находится в других таких-же дивах), но что то не выходит
Как это реализовать чтобы работало?
  • Вопрос задан
  • 55 просмотров
Решения вопроса 1
Tapokpy
@Tapokpy
starting
примерно вот так)
import requests
from bs4 import BeautifulSoup

def parsing(url): # Свою страницу
    """
    Parsing URL to get product name, price, link
    :param url: connect object
    """
    headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.3'} # что бы пропускали и не думали что бот

    response = requests.get(url, 'html.parser', headers=headers) # получение данных страницы

    soup = BeautifulSoup(response.text, features='html.parser') 
    category_site = soup.find_all('span', class_="inline-title") # пошел поиск по тэгам и классам
    all_items = soup.find_all('div', class_='porto-products wpb_content_element')# пошел поиск по тэгам и классам

    result = []
    for n, i in enumerate(category_site):
        db_category = i.text
        items = all_items[n].find_all('h3') 
        price = all_items[n].find_all('span', class_='woocommerce-Price-amount amount')
        link = all_items[n].find_all('a', class_='product-loop-title')

        for m, q in enumerate(items):
            db_item = q.text
            db_price = price[m].text.replace("руб.", "")
            db_url = link[m].get('href')
            db_list = (db_category, db_item, db_price, db_url)
            result.append(db_list)
    return result
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы