Рубрики
Без рубрики

Результаты объявления Bing Bing с помощью Python

Содержание: введение, импорт, что будет соскрешено, процесс, код, ссылки, OUTRO. Интро это … Помечено с Python, учебником, WebScraping, HTML.

Содержание: введение, импорт, что будет соскрешено, процесс, код, ссылки, OUTRO.

вступление

Этот пост блога является продолжением серии SCRAPING BING BING и содержит информацию о том, как царапать результаты объявления от поиска Bing с использованием Python. Будет показано альтернативное решение API с использованием Serpapi.

Импорт

from bs4 import BeautifulSoup
import requests
import lxml
from serpapi import GoogleSearch

Что будет соскрешено

Расширенная реклама

Встроенные объявления

Процесс

Выбор заголовка/ссылки CSS Селекторы из расширенных результатов объявлений

Выбор заголовка/ссылки CSS Селекторы из встроенных результатов рекламы

Снаппин встроенной рекламы:

for inline_ad in soup.select('.b_algo .b_vList.b_divsec .b_annooverride a'):
    inline_ad_title = inline_ad.text
    inline_ad_link = inline_ad['href']

Расширенная реклама Код Snippet:

for expanded_ad in soup.select('.deeplink_title'):
    expanded_ad_title = expanded_ad.text
    expanded_ad_link = expanded_ad.a['href']

Код

from bs4 import BeautifulSoup
import requests, lxml

headers = {
    "User-Agent":
    "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.114 Safari/537.36"
}

html = requests.get('https://www.bing.com/search?q=john deere tractors buy', headers=headers)
soup = BeautifulSoup(html.text, 'lxml')

try:
    for expanded_ad in soup.select('.deeplink_title'):
        expanded_ad_title = expanded_ad.text
        expanded_ad_displayed_link = expanded_ad.a['href']
        print(f'{expanded_ad_title}\n{expanded_ad_displayed_link}')
except:
    pass

try:
    for inline_ad in soup.select('.b_algo .b_vList.b_divsec .b_annooverride a'):
        inline_ad_title = inline_ad.text
        inline_ad_displayed_link = inline_ad['href']
        print(f'{inline_ad_title}\n{inline_ad_displayed_link}')
except:
    pass


# parts of the output:
'''
# expanded ads
Compact Tractors
https://www.deere.com/en/tractors/compact-tractors/
View The Utility Tractors
https://www.deere.com/en/tractors/utility-tractors/

---------------------------------------------------

# inline ads
2032R
https://www.deere.com/en/tractors/compact-tractors/2-series-compact-tractors/2032r/
1025R
https://www.deere.com/en/tractors/compact-tractors/1-series-sub-compact-tractors/1025r/
'''

Использование API результатов Bing AD

Serpapi – это платный API с бесплатной пробной версией 5000 поисков.

from serpapi import GoogleSearch

params = {
    "api_key": "YOUR_API_KEY",
    "engine": "bing",
    "q": "john deere tractors"
}

search = GoogleSearch(params)
results = search.get_dict()

for ads in results['ads']:
    title = ads['title']
    link = ads['displayed_link']
    print(title)
    print(link)

# part of the output:
'''
John Deere® Official Site - The Select Series Tractors
https://www.deere.com
John Deere Tractors | tractorhouse.com
https://www.tractorhouse.com/JohnDeere/Tractors
'''

Ссылки

Код в онлайн-IDEРезультаты результатов объявлений Bing

Outro.

Если у вас есть какие-либо вопросы или что-то не работает правильно, или вы хотите написать что-то еще, не стесняйтесь бросить комментарий в разделе комментариев или через Twitter на @serp_api Отказ

Твой, димитрий, а остальная часть команды серпапи.

Оригинал: “https://dev.to/serpapi/scrape-bing-ad-results-using-python-37o6”