Автоматизация SEO: скрейпинг, Python и отчёты: практическое руководство
نُشر في: 2026-04-29 21:00:42
SEO, как мы все знаем, необходимо для того, чтобы повысить вашу позицию в поисковых результатах. Но мы все знаем, что это может быть сложно и долгое дело. Однако, с помощью Python и Selenium вы можете сэкономить время и ускорить процессы. Этот пост покажет вам, как использовать Python и Selenium для SEO-автоматизации.
1. Скрипты для сбора данных
Первым шагом в SEO-автоматизации является сбора данных. Это может быть простое сканирование ваших сайтов для получения информации о ваших ключевых словах, ссылок, конкурентов и других данных.
Пример:
```python
import requests
from bs4 import BeautifulSoup
url = 'https://www.example.com'
response = requests.get(url)
soup = BeautifulSoup(response.content, 'html.parser')
# Get the number of pages
pages = int(soup.find('span', {'class': 'pagination-count'}.text.split(' ')[-1]
# Loop through each page and scrape data
for page in range(1, pages):
url = f'{url}/page/{page}'
response = requests.get(url)
soup = BeautifulSoup(response.content, 'html.parser')
# Scrape the data
...
```
2. Проверка положения в поисковых результатах
Python и Selenium позволяют вам проверять вашу позицию в поисковых результатах и запускать поиск ваших ключевых фраз.
```python
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
driver = webdriver.Firefox()
driver.get('https://google.com/search?q=example+keyword')
search_box = driver.find_element(By.NAME, 'q')
search_box.send_keys('example keyword')
search_box.send_keys(Keys.RETURN)
results = driver.find_elements(By.CSS_SELECTOR, '.g')
for result in results[:10]:
print(result.text)
```
3. Проверка ваших ссылок
url = 'https://www.example.com'
response = requests.get(url)
soup = BeautifulSoup(response.content, 'html.parser')
links = []
for link in soup.find_all('a'):
links.append(link.get('href'))
# Check each link
for link in links:
response = requests.get(link)
soup = BeautifulSoup(response.content, 'html.parser')
# Check link status
...
4. Проверка ваших 404
for link in soup.find_all('a'):
try:
response = requests.get(link.get('href'))
# Check link status
...
except requests.exceptions.HTTPError:
# Handle 404 errors
5. Проверка ваших ссылок на мобильной версии
```python
from selenium import webdriver
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
from selenium.webdriver.firefox.webdriver import WebDriver
capabilities = DesiredCapabilities.FIREFOX.copy()
capabilities['marionette'] = True
driver = webdriver.Firefox(capabilities=capabilities)
driver.get('https://m.example.com')
# Scroll to bottom of page
for _ in range(100):
driver.execute_script('window.scroll(0, document.body.scrollheight')
links = driver.find_elements(By.CSS_SELECTOR, 'a')
for link in links:
response = requests.get(link.get_attribute('href'))
# Check link status
6. Проверка ваших ссылок на других поисковиках
for search_engine in ['google', 'bing', 'yahoo']:
url = f'https://{search_engine}.com/search?q=example+keyword'
Заключение: кратко подытожьте ключевые действия и напомните о важности последовательности.
1. Скрипты для сбора данных
Первым шагом в SEO-автоматизации является сбора данных. Это может быть простое сканирование ваших сайтов для получения информации о ваших ключевых словах, ссылок, конкурентов и других данных.
Пример:
```python
import requests
from bs4 import BeautifulSoup
url = 'https://www.example.com'
response = requests.get(url)
soup = BeautifulSoup(response.content, 'html.parser')
# Get the number of pages
pages = int(soup.find('span', {'class': 'pagination-count'}.text.split(' ')[-1]
# Loop through each page and scrape data
for page in range(1, pages):
url = f'{url}/page/{page}'
response = requests.get(url)
soup = BeautifulSoup(response.content, 'html.parser')
# Scrape the data
...
```
2. Проверка положения в поисковых результатах
Python и Selenium позволяют вам проверять вашу позицию в поисковых результатах и запускать поиск ваших ключевых фраз.
```python
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
driver = webdriver.Firefox()
driver.get('https://google.com/search?q=example+keyword')
search_box = driver.find_element(By.NAME, 'q')
search_box.send_keys('example keyword')
search_box.send_keys(Keys.RETURN)
results = driver.find_elements(By.CSS_SELECTOR, '.g')
for result in results[:10]:
print(result.text)
```
3. Проверка ваших ссылок
url = 'https://www.example.com'
response = requests.get(url)
soup = BeautifulSoup(response.content, 'html.parser')
links = []
for link in soup.find_all('a'):
links.append(link.get('href'))
# Check each link
for link in links:
response = requests.get(link)
soup = BeautifulSoup(response.content, 'html.parser')
# Check link status
...
4. Проверка ваших 404
for link in soup.find_all('a'):
try:
response = requests.get(link.get('href'))
# Check link status
...
except requests.exceptions.HTTPError:
# Handle 404 errors
5. Проверка ваших ссылок на мобильной версии
```python
from selenium import webdriver
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
from selenium.webdriver.firefox.webdriver import WebDriver
capabilities = DesiredCapabilities.FIREFOX.copy()
capabilities['marionette'] = True
driver = webdriver.Firefox(capabilities=capabilities)
driver.get('https://m.example.com')
# Scroll to bottom of page
for _ in range(100):
driver.execute_script('window.scroll(0, document.body.scrollheight')
links = driver.find_elements(By.CSS_SELECTOR, 'a')
for link in links:
response = requests.get(link.get_attribute('href'))
# Check link status
6. Проверка ваших ссылок на других поисковиках
for search_engine in ['google', 'bing', 'yahoo']:
url = f'https://{search_engine}.com/search?q=example+keyword'
Заключение: кратко подытожьте ключевые действия и напомните о важности последовательности.
Поделиться:
Telegram
