from flask import Flask, request, render_template_string, jsonify
import requests
from bs4 import BeautifulSoup
app = Flask(__name__)
# HTML und CSS für die Hauptseite
HTML_TEMPLATE = """
Google Search Scraper
Google Search Scraper
"""
@app.route("/")
def index():
return render_template_string(HTML_TEMPLATE)
@app.route("/scrape", methods=["POST"])
def scrape():
query = request.json.get("query")
pages = int(request.json.get("pages", 1))
results = []
for page in range(pages):
url = f"https://www.google.com/search?q={query}&start={page * 10}"
headers = {"User-Agent": "Mozilla/5.0"}
response = requests.get(url, headers=headers)
soup = BeautifulSoup(response.text, "html.parser")
for result in soup.select(".tF2Cxc"):
title = result.select_one(".DKV0Md").text
link = result.select_one("a")["href"]
description = result.select_one(".VwiC3b").text if result.select_one(".VwiC3b") else "Keine Beschreibung verfügbar"
results.append({"title": title, "link": link, "description": description})
return jsonify(results)
if __name__ == "__main__":
app.run(debug=True)
Kommentare
Kommentar veröffentlichen