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

Scrape Google Поиск результатов поиска с помощью Python Beautifulsoup

Здравствуйте, читатели! Здесь мы будем изучать, как царапать результаты поиска Google, используя BeautifulSoup в Python. В этой статье мы посмотрим на

Автор оригинала: Pankaj Kumar.

Здравствуйте, читатели! Здесь мы будем изучать Как царапать результаты поиска Google с использованием BeautifulSoup в питоне.

В этой статье мы посмотрим на одну из самых интересных концепций в Python – Scraping веб-сайта.

Итак, давайте начнем!

Что такое Scraping Web?

Время от времени, когда мы проводим через Интернет, мы встретимся с некоторыми данными, связанными с пользователем, которые мы верим, будут полезны для нас в будущем. И тогда мы стараемся скопировать его и сохранить его в буфер обмена каждый раз.

Теперь давайте проанализируем следующий сценарий

Мы часто нужны данные для анализа поведения определенных факторов с точки зрения моделирования данных. Таким образом, мы начинаем создавать набор данных с нуля путем копирования вставки данных.

Это когда Веб-соскоб или Веб ползет входит в картину.

Веб-соскоб – это простой способ выполнить повторяющуюся задачу копирования и вставки данных с веб-сайтов. С помощью веб-сосказывания мы можем выползриться/серфировать через веб-сайты и сохранять и представлять необходимые данные в индивидуальном формате.

Давайте теперь понять работу веб-соскабливания в следующем разделе.

Как работает Web Scraping?

Давайте попробуем понять функционирование Веб-соскоб Через несколько шагов:

  • Изначально мы пишем кусок кода, который запрашивает сервер для информации в отношении веб-сайта, который мы хотим ползать или информацию, которую мы хотим скрепить в Интернете.
  • Как браузер, код позволит нам загрузить исходный код веб-страницы.
  • Кроме того, вместо визуализации страницы в том, что браузер делает, мы можем отфильтровать значения на основе тегов HTML и соскрести только необходимую информацию в индивидуальном порядке.

Для этого мы можем быстро и индивидуально загрузить исходный код веб-страницы.

Давайте теперь попробуем реализовать веб-соскоб в предстоящем разделе.

Массовые соскобы API

Если вы хотите создать какую-то услугу, соскорья навалочный поиск, шансы высоки, что Google блокирует вас из-за необычно большого количества запросов. В этом случае онлайн API вроде Zenserp это большая помощь.

Zenserp выполняет поиск по различным IPS и прокси и позволяет сосредоточиться на вашей логике, а не инфраструктуре. Это также облегчает вашу работу, поддерживая поиск изображений, поиск покупок, обратного поиска изображений, тенденции и т. Д. Вы можете попробуйте здесь Просто выпустите любой результат поиска и посмотрите на ответ JSON.

Реализация шагов, чтобы соскрести к результатам поиска Google, используя BeautifulSoup

Мы будем реализовать красивую подвиску, чтобы соскрести здесь результаты поиска Google здесь.

Beautifulsoup это библиотека Python, которая позволяет нам ползтировать веб-сайт и соскрести XML и HTML документы , веб-страницы , так далее.

Scrape Google Поиск результатов для индивидуальных поисков

Пример 1:

import requests
from bs4 import BeautifulSoup
import random

text = 'python'
url = 'https://google.com/search?q=' + text
A = ("Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.36",
       "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2227.1 Safari/537.36",
       "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2227.0 Safari/537.36",
       )

Agent = A[random.randrange(len(A))]

headers = {'user-agent': Agent}
r = requests.get(url, headers=headers)

soup = BeautifulSoup(r.text, 'lxml')
for info in soup.find_all('h3'):
    print(info.text)
    print('#######')

Линия по линии Объяснения вышеуказанного кода:

  1. Импорт необходимых библиотек Чтобы использовать BeautifulSoup для соскабливания, нам нужно импортировать библиотеку через код ниже:
from bs4 import BeautifulSoup

Кроме того, нам нужен библиотека запросов Python для загрузки веб-страницы. Модуль запроса отправляет Получить запрос на сервер, который позволяет загружать HTML содержимое необходимой веб-страницы.

import requests

2. Установите URL: Нам нужно предоставить URL I.e. Домен, в котором мы хотим, чтобы наша информация была обысками и соскоблена. Здесь мы предоставили URL Google и добавили текст «Python», чтобы соскрести результаты в отношении.

3. Установка пользовательского агента: Нам нужно указать Заголовки агента пользователя который позволяет серверу идентифицировать систему и приложение, браузеры, в которых мы хотим, чтобы данные были загружены, как показано ниже-

A = ("Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.36",
       "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2227.1 Safari/537.36",
       "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2227.0 Safari/537.36",
       )

4. Запросs.get (URL, заголовок) Отправляет запрос на веб-сервер, чтобы загрузить запрошенное HTML содержимое веб-страницы или результаты поиска.

5. Создайте объект Beautifulsoup с запрошенными данными из ‘ lxml «Шассинг заголовков». « lxml Пакет должен быть установлен для приведенного ниже кода для работы.

soup = BeautifulSoup(r.text, 'lxml')

6. Кроме того, мы используем Object.find_all ('h3') царапать и отображать все Заголовок 3 Содержание веб-браузера для Текст = ‘Python’ Отказ

Выход:

Welcome to Python.org
#######
Downloads
#######
Documentation
#######
Python For Beginners
#######
Python 3.8.5
#######
Tutorial
#######
Python Software Foundation
#######
Python (programming language) - Wikipedia
#######
Python Tutorial - W3Schools
#######
Introduction to Python - W3Schools
#######
Python Tutorial - Tutorialspoint
#######
Learn Python - Free Interactive Python Tutorial
#######
Learn Python 2 | Codecademy
#######

Результаты поиска Scrape из определенной веб-страницы

В этом примере мы соскоблили Значения тегов HTML С сайта, как показано:

Пример 2:

import requests
from bs4 import BeautifulSoup
import random

url = 'https://www.askpython.com/python/examples/python-predict-function'
A = ("Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.36",
       "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2227.1 Safari/537.36",
       "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2227.0 Safari/537.36",
       )

Agent = A[random.randrange(len(A))]

headers = {'user-agent': Agent}
r = requests.get(url, headers=headers)

soup = BeautifulSoup(r.content, 'lxml')


title = soup.find('title')
print("Title of the webpage--\n")
print(title.string)
search = soup.find_all('div',class_="site")
print("Hyperlink in the div of class-site--\n")
for h in search:
    print(h.a.get('href'))

Кроме того, мы соскоблили титул тег Значения и все HREF Значения, присутствующие в div tag класса. Здесь значение класса отличается для каждого веб-сайта в соответствии со структурой кода.

Выход:

Title of the webpage--

Python predict() function - All you need to know! - AskPython
Hyperlink in the div of class-site--

https://www.askpython.com/

Заключение

По этому, мы подошли к концу этой темы. Не стесняйтесь комментировать ниже, если вы столкнетесь с любым вопросом.

Для большего количества таких постов, связанных с Python, оставаться настроенными, а до тех пор, как потом, счастливое обучение !! 🙂.

Рекомендации