Crea agenti AI intelligenti con capacità di web scraping e ricerca utilizzando LangChain
L’integrazione Olostep LangChain fornisce strumenti completi per costruire agenti AI che possono cercare, estrarre, analizzare e strutturare dati da qualsiasi sito web. Perfetto per applicazioni LangChain e LangGraph.
Dizionario/stringa schema JSON opzionale che descrive il formato di output desiderato
from langchain_olostep import answer_questionimport asyncio# Fai una domanda sempliceresult = asyncio.run(answer_question.ainvoke({ "task": "What is the capital of France?"}))print(result)# Restituisce: {"answer": {"result": "Paris"}, "sources": [...]}
from langchain_olostep import extract_urlsimport asyncio# Ottieni tutti gli URL da un sito webresult = asyncio.run(extract_urls.ainvoke({ "url": "https://example.com", "top_n": 100}))print(result)# Restituisce: {"urls": [...], "total_urls": 100, ...}
Crea agenti intelligenti che possono cercare ed estrarre dal web:
from langchain.agents import initialize_agent, AgentTypefrom langchain_openai import ChatOpenAIfrom langchain_olostep import ( scrape_website, answer_question, extract_urls)# Crea agente con strumenti Olosteptools = [scrape_website, answer_question, extract_urls]llm = ChatOpenAI(model="gpt-4o-mini")agent = initialize_agent( tools=tools, llm=llm, agent=AgentType.ZERO_SHOT_REACT_DESCRIPTION, verbose=True)# Usa l'agenteresult = agent.run("""Research the company at https://company.com:1. Scrape their about page2. Search for their latest funding round3. Extract all their product pages""")print(result)
from langchain_olostep import scrape_website# Estrai prodotto Amazonresult = scrape_website.invoke({ "url": "https://www.amazon.com/dp/PRODUCT_ID", "parser": "@olostep/amazon-product", "format": "json"})# Restituisce dati strutturati del prodotto: prezzo, titolo, valutazione, ecc.
Quando estrai più di 3-5 URL, usa scrape_batch invece di più chiamate scrape_website. Il batch processing è molto più veloce ed economico.
Imposta Timeout Appropriati
Per siti pesanti di JavaScript, usa il parametro wait_before_scraping (2000-5000ms è tipico). Questo assicura che il contenuto dinamico sia completamente caricato.
Usa Parser Specializzati
Per siti web popolari (Amazon, LinkedIn, Google), usa i nostri parser pre-costruiti per ottenere dati strutturati automaticamente.
Filtra gli URL in Modo Efficiente
Quando usi extract_urls o crawl_website, usa modelli glob per concentrarti sulle pagine rilevanti ed evitare elaborazioni inutili.
Gestisci i Limiti di Frequenza
Implementa il backoff esponenziale per errori di limite di frequenza. L’API gestisce automaticamente la maggior parte dei limiti di frequenza internamente.