---
title: "Verwendung von LangChain und Bright Data für die Websuche"
slug: langchain-serp-scraping
date: 2025-06-29T12:18:48+00:00
modified: 2025-11-04T08:48:50+00:00
permalink: https://brightdata.de/blog/ai/langchain-serp-scraping
type: blog
---

[ Blog ](https://brightdata.de/blog "Blog") / [AI](https://brightdata.de/blog/ai)







 [AI](https://brightdata.de/blog/ai)

# Verwendung von LangChain und Bright Data für die Websuche

Entdecken Sie, wie Sie Ihre KI-App mit einer integrierten Websuche mit LangChain und Bright Data für aktuelle Ergebnisse und intelligentere Agenten aufwerten können.

 13 min lesen





 [ ![Jacob Nulty](https://media.brightdata.de/2024/12/Jacob-Nulty-50x50.jpg) ](https://brightdata.com/blog/authors/jake-nulty)

 [Jake Nulty

Technical Writer

 ](https://brightdata.com/blog/authors/jake-nulty)





 ![Using Langchain and Bright Data for Web Search blog image](https://media.brightdata.de/2025/06/Using-Langchain-and-Bright-Data-for-Web-Search-blog-image.png)





Die Entwicklung von KI-Agenten wird von Tag zu Tag einfacher. In diesem Beitrag gehen wir den Prozess der Verwendung des neuen [BrightDataSERP-Tools](https://python.langchain.com/docs/integrations/tools/brightdata_serp/) [von LangChain](https://www.langchain.com/) durch. Falls Sie mit dem Akronym nicht vertraut sind: SERP steht für “Search Engine Results Page”.

Dieses Tutorial ist anfängerfreundlich. Alles, was Sie brauchen, ist ein grundlegendes Verständnis von Python. Wenn Sie diesen Leitfaden beendet haben, können Sie die folgenden Fähigkeiten zu Ihrem Werkzeugkasten hinzufügen.

- Durchführen einer einfachen Suche mit BrightDataSERP
- Passen Sie Ihre SERP-Ausgabe an
- Saubere Ausgabe für LLM-freundliche Nutzung
- Erstellen eines KI-Agenten mit Suchfunktionen

## Intro: Die Grenzen des Wissens über AI

Wenn Sie mit den LLMs vertraut sind, wissen Sie bereits, dass ihr Wissen statisch ist. Wenn sie für die Öffentlichkeit freigegeben werden, sind sie mit der Ausbildung und der Feinabstimmung fertig – es kann kein weiteres Wissen hinzugefügt werden.

Bevor OpenAI die Suchfunktionen hinzufügte, hatte ChatGPT ein Wissensabschneidedatum. LLMs haben immer noch Grenzdaten, basierend auf ihrer letzten Feinabstimmung. Die Modelle sind jedoch in der Lage, [Zero-Shot-Inferenz](/blog/ai/zero-shot-learning) zu verwenden. Mehr über den gesamten Trainingsprozess können Sie [hier](/blog/ai/what-is-ai-model-training) erfahren.

**KI-Modelle werden mit einer statischen Wissensbasis eingesetzt. Durch Zero-Shot-Inferenz können die Modelle neue Daten sinnvoll verarbeiten, aber sie behalten die Informationen nicht dauerhaft bei.**

## Wie LangChain Beschränkungen angeht

LangChain ermöglicht es uns, Werkzeuge zu erstellen und sie mit verschiedenen LLMs zu verbinden. Wenn Sie Python-Funktionen schreiben können, können Sie LLMs diese Funktionen aufrufen lassen – nach ihrem eigenen Ermessen. Sie geben dem LLM Zugriff auf das Werkzeug. Es macht alles andere. Wenn Sie ihm eine Frage stellen, die er mit Vortraining beantworten kann, wird er das Tool nicht benutzen. Wenn Sie ihm eine Frage stellen, die es nicht kennt, wird es seine Werkzeuge benutzen, um zu versuchen, die Antwort zu finden.

LangChain bietet sogar vorgefertigte Werkzeuge für alle folgenden Anforderungen.

- Suche
- Code
- Produktivität
- Web-Browsing
- Datenbanken
- Finanzen

Die vollständige Liste der integrierten Tools von LangChain können Sie [hier](https://python.langchain.com/docs/integrations/tools/#all-tools) einsehen. Wir haben noch bessere Neuigkeiten. Bright Data ist eines von ihnen!

## Verwendung von LangChain mit Bright Data

Nachdem wir nun die Funktionsweise erläutert haben, wollen wir uns ansehen, wie man LangChain mit Bright Data verwendet. Wir gehen davon aus, dass Sie über grundlegende Kenntnisse in Python verfügen. Wir gehen durch, wie Sie Ihre API-Schlüssel von OpenAI und Bright Data erhalten. Bevor Sie fortfahren, sollten Sie sich zunächst unseren [Leitfaden zum Web-Scraping mit LangChain und Bright Data](/blog/web-data-de/web-scraping-with-langchain-and-bright-data) ansehen.

### Voraussetzungen

Zunächst einmal müssen Sie die Bright Data-Tools von LangChain installieren. Der `Pip-Install-Befehl` unten tut genau das.

`pip install langchain-brightdata`

Als Nächstes benötigen Sie einen Bright Data-API-Schlüssel und eine SERP-Instanz namens `serp`. Sie können sich [hier](/products/serp-api) für eine kostenlose Testversion unserer SERP-API anmelden. Stellen Sie sicher, dass Ihre Zone den Namen `serp` trägt. `serp1` funktioniert nicht. Wenn Sie fertig sind, klicken Sie auf die Schaltfläche “Hinzufügen” und schließen Sie die Einrichtung des Tools ab.

![Hinzufügen der SERP-Zone](https://media.brightdata.com/2025/06/image-90-1024x603.png)Als Nächstes können Sie Ihren API-Schlüssel über das Dashboard Ihrer neuen SERP-Zone abrufen.

![Ermitteln des Bright Data-API-Schlüssels](https://media.brightdata.com/2025/06/image-91.png)Um Ihren OpenAI-Schlüssel zu erhalten, öffnen Sie die [API-Schlüssel-Seite](https://platform.openai.com/api-keys) und klicken Sie auf die Schaltfläche “Neuen geheimen Schlüssel erstellen”.

![Einen neuen OpenAI-Schlüssel erhalten](https://media.brightdata.com/2025/06/image-92-1024x352.png)### Ein grundlegendes Beispiel

Wir beginnen mit einem einfachen Beispiel dafür, wie das Tool funktioniert. Tauschen Sie den API-Schlüssel unten gegen Ihren eigenen aus. Die `BrightDataSERP-Klasse` übernimmt hier die Hauptarbeit. Wir legen nur die Konfiguration fest und geben die Ergebnisse aus. Normalerweise brauchen Sie `.encode("utf-8")` nicht, aber wir hatten einige Druckprobleme mit Windows, die dadurch behoben wurden.

```none
from langchain_brightdata import BrightDataSERP

api_key = "your-bright-data-api-key"

tool = BrightDataSERP(bright_data_api_key=api_key)

results = tool.invoke("Latest AI News")

print(results.encode("utf-8"))
```

Hier ist ein Ausschnitt aus einer Beispielausgabe. Wenn Sie dies (oder etwas Ähnliches) sehen, sind Sie auf dem richtigen Weg.

```none
https://api.brightdata.com/request {'zone': 'serp', 'url': 'https://www.google.com/search?q=Latest%20AI%20News&gl=us&hl=en&num=10', 'format': 'raw'} {'Authorization': 'Bearer your-api-key', 'Content-Type': 'application/json'}
b'<!doctype html><html itemscope="" itemtype="http://schema.org/SearchResultsPage" lang="en-MX"><head><meta charset="UTF-8"><meta content="origin" name="referrer"><link href="//www.gstatic.com/images/branding/searchlogo/ico/favicon.ico" rel="icon"><meta content="/images/branding/googleg/1x/googleg_standard_color_128dp.png" itemprop="image"><title>Latest AI News - Google Search</title><script nonce="IBYZiM7epIs5U67-92qXVg">window._hst=Date.now();</script><script nonce="IBYZiM7epIs5U67-92qXVg">
...
```

### Erweiterte Verwendung

Im folgenden Beispiel verwenden wir kwargs, um eine benutzerdefinierte Konfiguration mit `BrightDataSERP` festzulegen. Die vollständige Dokumentation zur Anpassung können Sie [hier](https://python.langchain.com/docs/integrations/tools/brightdata_serp/#customization-options) einsehen. Wir legen den Suchtyp auf `"Shop"` fest, um relevantere Shopping-Ergebnisse zu erhalten.

```none
from langchain_brightdata import BrightDataSERP

api_key = "your-bright-data-api-key"

#initialize the tool
serp_tool = BrightDataSERP(
    bright_data_api_key=api_key,
    search_engine="google",
    country="us",
    language="en",
    results_count=10,
    parse_results=True
)

#perform the search
results = serp_tool.invoke(
    {
        "query": "best electric vehicles",
        "country": "us",
        "language": "en",
        "search_type": "shop",
        "device_type": "mobile",
        "results_count": 15,
    }
)

print(results)
```

Sie können jede der folgenden Optionen anpassen, um Ihre Suchergebnisse zu verfeinern.

- `Abfrage`
- `Land`
- `Sprache`
- `such_art`
- `Gerät_Typ`
- `Ergebnis_Zahl`

## Erstellen eines KI-Agenten mit Bright Data und OpenAI

Nachdem Sie nun ein grundlegendes Verständnis für die Verwendung von `BrightDataSERP` haben, wollen wir uns ansehen, wie ein echter KI-Agent es verwendet. Wir gehen die Codeteile durch und zeigen dann, wie das Ganze funktioniert.

### Die Einzelteile

Bevor wir anfangen, müssen Sie noch ein paar Dinge installieren.

Installieren Sie LangChain selbst.

```none
pip install langchain
```

Installieren Sie OpenAI-Unterstützung für LangChain.

```none
pip install langchain-openai
```

Installieren Sie LangGraph, um Agenten zu erstellen.

```none
pip install langgraph
```

Im Zeitalter der künstlichen Intelligenz ist das vielleicht ein kleiner Schock, aber wir werden auch BeautifulSoup installieren. Sie werden noch früh genug sehen, warum.

`pip install beautifulsoup4`

#### Eine Suchfunktion erstellen

Die folgende Funktion ruft unsere Suchergebnisse ab – ähnlich wie das Beispiel von vorhin. Nachdem wir diese Ergebnisse erhalten haben, verwenden wir BeautifulSoup, um den Text aus ihnen zu ziehen. Jetzt werden wir viel weniger Token verwenden, wenn wir die Ergebnisse an unseren LLM übergeben. Alles, was er sieht, ist der Text der Website. Wir behalten `n` (Zeilenumbruch) Zeichen, damit der Agent das Seitenlayout besser verstehen kann.

Sobald wir den Text extrahiert haben, geben wir ihn zurück.

```none
#create a function to return only the text from search results
def get_cleaned_search_results(query):

    #initialize the tool
    serp_tool = BrightDataSERP(
        bright_data_api_key=bright_data_api_key,
        search_engine="google",
        country="us",
        language="en",
        results_count=5,
        parse_results=False,
    )

    #get the results
    results = serp_tool.invoke({
        "query": query,
        "country": "us",
        "language": "en",
        "results_count": 5,
    })

    #parse the text the old fashioned way----save on input tokens
    soup = BeautifulSoup(results, "html.parser")

    #return the results but keep the newlines, this lets the model see the layout without all the extra code
    return soup.get_text(separator="n")
```

#### Die Funktion in ein Werkzeug verwandeln

Jetzt verwenden wir die `Tool-Klasse` von LangChain, um die Funktion zu verpacken. Dies ermöglicht es unserem Agenten, sie als Werkzeug aufzurufen. Wie Sie unten sehen, ist es ziemlich einfach. Wir geben dem Tool einen Namen und eine Beschreibung. Außerdem verweisen wir das Tool mit dem Argument `func` auf eine Funktion.

```none
#turn the function into a langchain tool
cleaned_search_tool = Tool.from_function(
    name="CleanedBrightDataSearch",
    func=get_cleaned_search_results,
    description=(
        "Use this tool to retrieve up-to-date Google search results when answering "
        "questions that require recent information, product details, or current events. "
        "Pass in the user's natural-language query."
    ),
)
```

#### Den Agenten erstellen

Der folgende Code erstellt unseren Agenten. `ChatOpenAI` erstellt eine LLM-Instanz. Wir übergeben unseren LLM und unser Tool an `create_react_agent()`, um den eigentlichen Agenten zu erstellen.

```none
#start the llm
llm = ChatOpenAI(
    model="gpt-4o",
    openai_api_key=openai_api_key,
    streaming=False,
    #set the token limit arbitrarily, we used 512 because it's a small task
    max_tokens=512
)

#give the llm access to the tool
agent = create_react_agent(llm, tools=[cleaned_search_tool])
```

#### Eine langweilige, aber funktionale Benutzeroberfläche

Jedes Programm braucht eine Laufzeit, egal wie primitiv es ist. Hier erstellen wir nur ein einfaches Terminal-Setup für den Benutzer, um mit dem Agenten zu interagieren. Der Benutzer gibt eine Eingabeaufforderung ein. Die Eingabeaufforderung wird an Nachrichten weitergegeben, und dann streamen wir die Ausgabe des Agenten.

```none
#the user can ask the agent anything--like the chatgpt webapp
user_prompt = input("Ask me anything: ")
messages = [{"role": "user", "content": user_prompt}]

#stream the model output, the model should perform searches when necessary
for step in agent.stream({"messages": messages}, stream_mode="values"):
    step["messages"][-1].pretty_print()
```

## Alles zusammenfügen

### Der vollständige Kodex

Hier ist unser vollständiges Code-Beispiel.

```none
from langchain_openai import ChatOpenAI
from langchain_brightdata import BrightDataSERP
from langgraph.prebuilt import create_react_agent
from langchain.tools import Tool
from bs4 import BeautifulSoup

#put your creds here
openai_api_key = "your-openai-api-key"
bright_data_api_key = "your-bright-data-api-key"

#create a function to return only the text from search results
def get_cleaned_search_results(query):

    #initialize the tool
    serp_tool = BrightDataSERP(
        bright_data_api_key=bright_data_api_key,
        search_engine="google",
        country="us",
        language="en",
        results_count=5,
        parse_results=False,
    )

    #get the results
    results = serp_tool.invoke({
        "query": query,
        "country": "us",
        "language": "en",
        "results_count": 5,
    })

    #parse the text the old fashioned way----save on input tokens
    soup = BeautifulSoup(results, "html.parser")

    #return the results but keep the newlines, this lets the model see the layout without all the extra code
    return soup.get_text(separator="n")

#turn the function into a langchain tool
cleaned_search_tool = Tool.from_function(
    name="CleanedBrightDataSearch",
    func=get_cleaned_search_results,
    description=(
        "Use this tool to retrieve up-to-date Google search results when answering "
        "questions that require recent information, product details, or current events. "
        "Pass in the user's natural-language query."
    ),
)

#start the llm
llm = ChatOpenAI(
    model="gpt-4o",
    openai_api_key=openai_api_key,
    temperature=0.7,
    streaming=False,
    max_tokens=512
)

#give the llm access to the tool
agent = create_react_agent(llm, tools=[cleaned_search_tool])

#the user can ask the agent anything--like the chatgpt webapp
user_prompt = input("Ask me anything: ")
messages = [{"role": "user", "content": user_prompt}]

#stream the model output, the model should perform searches when necessary
for step in agent.stream({"messages": messages}, stream_mode="values"):
    step["messages"][-1].pretty_print()
```

### Was unser Agent sieht

Der Ausschnitt hier ist das, was der Agent sieht. Er enthält unsere Eingabeaufforderung und die Seite, die er zum Referenzieren abruft.

```none
python bd-agent-example.py
Ask me anything: give me the latest spacex news
================================ Human Message =================================

give me the latest spacex news
================================== Ai Message ==================================
Tool Calls:
  CleanedBrightDataSearch (call_IKoaponXVrNfVSRTfonU4ewo)
 Call ID: call_IKoaponXVrNfVSRTfonU4ewo
  Args:
    __arg1: latest SpaceX news
https://api.brightdata.com/request {'zone': 'serp', 'url': 'https://www.google.com/search?q=latest%20SpaceX%20news&gl=us&hl=en&num=5', 'format': 'raw'} {'Authorization': 'Bearer d791e32cedf2d9657eaafd7a76b333f67ce5836c89d85691b4d6c07060b07b84', 'Content-Type': 'application/json'}
================================= Tool Message =================================
Name: CleanedBrightDataSearch

latest SpaceX news - Google Search

Please click
here
 if you are not redirected within a few seconds.
Accessibility Links
Skip to main content
Accessibility help
Accessibility feedback

Press
/
 to jump to the search box
latest SpaceX news

Sign in
Filters and Topics
AI Mode
All
News
Videos
Images
Short videos
Forums
More
About 85,800,000 results
 (0.38 seconds)

Search Results
SpaceX - Updates
SpaceX
https://www.spacex.com
 › updates
SpaceX
https://www.spacex.com
 › updates
As early as this year,
Falcon 9 will launch Dragon's sixth commercial astronaut mission, Fram2
, which will be the first human spaceflight mission to explore ...
Videos
12:03
YouTube
 ·
 GREAT SPACEX
SpaceX's Solution to Launch Starship Again after Test Site ...
YouTube
 ·
 GREAT SPACEX
2 days ago
47:39
YouTube
 ·
 GREAT SPACEX
COPV Destroyed Starship S36, What next? Honda's Hopper ...
YouTube
 ·
 GREAT SPACEX
1 day ago
3:10
YouTube
 ·
 CBS News
Watch: SpaceX Starship explodes, causes massive fiery burst ...
YouTube
 ·
 CBS News
3 days ago
Feedback
View all
Top stories
USA Today
SpaceX Starship exploded again. What's next for Elon Musk's company after latest setback?
3 days ago
Soap Central
Everything to know about Elon Musk's latest SpaceX starship explosion during static fire test in Texas
3 days ago
The Guardian
SpaceX Starship breaks up over Indian Ocean in latest bumpy test
4 weeks ago
CBS News
SpaceX loses contact with its Starship on 9th test flight after last 2 went down in flames
4 weeks ago
More news
Twitter Results
SpaceX (@SpaceX) · X
X (Twitter)
https://x.com/SpaceX
Watch Falcon 9 launch Dragon and Ax-4 to the @Space_Station x.com/i/broadcasts/1YpJ…
2 hours ago
Falcon 9 delivers 27 @Starlink satellites to orbit from Florida
9 hours ago
Deployment of 27 @Starlink satellites confirmed
9 hours ago
Elon Musk promises more risky launches after sixth ...
Space
https://www.space.com
 › ... › Private Spaceflight
Space
https://www.space.com
 › ... › Private Spaceflight
1 day ago
 —
Until
last
 year, the FAA allowed
SpaceX
 to try up to five Starship launches a year. This month, the figure was increased to 25. A lot can go ...
People also search for
Latest spacex news
nasa
Latest spacex news
live
SpaceX
launch today live
SpaceX
Starship
 news
today
SpaceX
Starship launch date
SpaceX
launch tonight
SpaceX
launch today live countdown
SpaceX
recent landing
Page Navigation
1
2
3
4
5
6
7
8
9
10
Next

Footer Links
Google apps
```

### Modell Ausgang

In dem folgenden Ausschnitt hat unser Modell die Überprüfung der Ergebnisse abgeschlossen. Wie Sie sehen können, haben wir eine saubere Zusammenfassung der Suchergebnisse.

```none
================================== Ai Message ==================================

Here are some of the latest updates on SpaceX:

1. **Falcon 9 Launches**: SpaceX's Falcon 9 recently launched 27 Starlink satellites into orbit from Florida. The deployment of these satellites was confirmed about 9 hours ago.

2. **Starship Setbacks**: SpaceX's Starship program has faced some challenges recently. A Starship exploded during a test, which has been a setback for the company. Despite this, Elon Musk has indicated plans for more risky launches following the sixth astronaut mission.

3. **Increased Launch Capacity**: The FAA has increased the number of Starship launches SpaceX is permitted to conduct per year from 5 to 25, allowing for more frequent test launches.

These developments highlight ongoing progress and challenges within SpaceX's operations.
```

## Schlussfolgerung

Die Entwicklung von KI wird immer einfacher. Mit LangChain und Bright Data können Sie einige der besten Suchmaschinen auf dem Markt nutzen – Google, Bing und mehr! Unser Beispiel hier war ziemlich minimalistisch, ein automatisierter Suchassistent.

Sie können dieses Projekt auf die nächste Stufe bringen und versuchen, mehrere Tools zu LangChain hinzuzufügen. Sie wissen jetzt, wie man Tools erstellt, SERP-Ergebnisse trimmt und wie man sie an einen KI-Agenten für eine verbesserte Ausgabe weitergibt. Nehmen Sie Ihre neuen Fähigkeiten und bauen Sie etwas.

LangChain bietet auch Integrationen mit den folgenden Tools.

- [Web Unlocker](/products/web-unlocker)
- [Scraper-API](/products/web-scraper)

Bei Bright Data bieten wir Produkte in jeder Form und Größe an, die Ihren Anforderungen an die Datenerfassung entsprechen. Melden Sie sich für eine kostenlose Testversion an und legen Sie noch heute los!



Vertrieb kontaktierenGratis testen![google social icon](/wp-content/themes/brightdata/assets/images/ic_google.svg)









 Inhaltsverzeichnis













 [ ](https://news.ycombinator.com/submitlink?t=Verwendung+von+LangChain+und+Bright+Data+f%C3%BCr+die+Websuche&u=https://brightdata.de/blog/ai/langchain-serp-scraping) [ ](https://www.linkedin.com/shareArticle?mini=true&title=Verwendung+von+LangChain+und+Bright+Data+f%C3%BCr+die+Websuche&url=https://brightdata.de/blog/ai/langchain-serp-scraping) [ ](http://www.reddit.com/submit?title=Verwendung+von+LangChain+und+Bright+Data+f%C3%BCr+die+Websuche&url=https://brightdata.de/blog/ai/langchain-serp-scraping)







##  Das könnte Sie auch interessieren

 [ ![OpenHuman with Bright Data](https://media.brightdata.de/2026/09/OpenHuman-with-Bright-Data.png) ](https://brightdata.de/blog/ai/openhuman-with-bright-data "Produktionsreifer Web-Zugriff in OpenHuman über die Bright Data CLI")

 [AI



 ![Antonello Zanini](https://media.brightdata.de/2022/12/Antonello-Zanini-2-50x50.jpg)

Antonello Zanini

Technical Writer





### Produktionsreifer Web-Zugriff in OpenHuman über die Bright Data CLI

Integrieren Sie die Bright Data CLI mit OpenHuman, um produktionsreifen Web-Zugriff und Datenerhebung für KI-Agenten zu ermöglichen.



 09-Sep-2026

 12 min lesen

 ](https://brightdata.de/blog/ai/openhuman-with-bright-data)

 [ ![Multimodal Web Scraping with MiniMax](https://media.brightdata.de/2026/09/Multimodal-Web-Scraping-with-MiniMax.png) ](https://brightdata.de/blog/web-data-de/multimodal-web-scraping-with-minimax "Multimodales Web-Scraping mit MiniMax")

 [Web Data



 ![Antonello Zanini](https://media.brightdata.de/2022/12/Antonello-Zanini-2-50x50.jpg)

Antonello Zanini

Technical Writer





### Multimodales Web-Scraping mit MiniMax

Kombinieren Sie Bright Data Web Unlocker mit MiniMax M3 Vision, um strukturierte Daten aus Bildern und Webseiten-Screenshots zu extrahieren.



 09-Sep-2026

 4 min lesen

 ](https://brightdata.de/blog/web-data-de/multimodal-web-scraping-with-minimax)

 [ ![The 10 Best CLI Tools for Codex in 2026](https://media.brightdata.de/2026/08/The-10-Best-CLI-Tools-for-Codex-in-2026.png) ](https://brightdata.de/blog/ai/best-cli-tools-for-codex "Die 10 besten CLI-Tools für Codex im Jahr 2026 – Getestet & Bewertet")

 [AI



 ![Daniel Shashko](https://media.brightdata.de/2022/04/Daniel-Shashko-2-50x50.png)

Daniel Shashko

Web Data &amp; AI Expert





### Die 10 besten CLI-Tools für Codex im Jahr 2026 – Getestet &amp; Bewertet

Die 10 CLI-Tools, die Codex schneller und leistungsfähiger machen, beginnend mit dem Bright Data CLI für echten Web-Zugriff aus der Sandbox heraus.



 06-Sep-2026

 20 min lesen

 ](https://brightdata.de/blog/ai/best-cli-tools-for-codex)
