LeetCode Solution
Parsen Sie einen einzelnen LeetCode-Community-Lösungsbeitrag in strukturiertes JSON mit Autor, Tags, Text, extrahierten Code-Blöcken und Engagement-Zahlen.
Viele Beiträge nennen mehrere Sprachen, legen die Alternativen aber hinter Tabs, die nacheinander gerendert werden. codeBlocks enthält die Blöcke, die im ausgelieferten Text vorhanden sind, ein für drei Sprachen betitelter Beitrag kann also mit Blöcken in einer zurückkommen.
API-Nutzung
Fügen Sie &scraper=leetcode-solution zu einem Crawling-API-Request hinzu. Kodieren Sie die Ziel-URL im Parameter url URL-encoded.
curl 'https://api.crawlbase.com/?token=YOUR_TOKEN' \
--data-urlencode 'url=https://leetcode.com/problems/two-sum/solutions/3619262/3-methods-c-java-python-beginner-friendl-x595/' \
--data-urlencode 'scraper=leetcode-solution' -Gfrom crawlbase import CrawlingAPI
api = CrawlingAPI({'token': 'YOUR_TOKEN'})
res = api.get(
'https://leetcode.com/problems/two-sum/solutions/3619262/3-methods-c-java-python-beginner-friendl-x595/',
{'scraper': 'leetcode-solution'}
)
import json
data = json.loads(res['body'])const { CrawlingAPI } = require('crawlbase');
const api = new CrawlingAPI({ token: 'YOUR_TOKEN' });
const res = await api.get(
'https://leetcode.com/problems/two-sum/solutions/3619262/3-methods-c-java-python-beginner-friendl-x595/',
{ scraper: 'leetcode-solution' }
);
const data = JSON.parse(res.body);require 'crawlbase'
api = Crawlbase::API.new(token: 'YOUR_TOKEN')
res = api.get('https://leetcode.com/problems/two-sum/solutions/3619262/3-methods-c-java-python-beginner-friendl-x595/', scraper: 'leetcode-solution')
data = JSON.parse(res.body)Beispiel-Eingabe-URL
Im Parameter url funktioniert jeder LeetCode-Community-Lösungsbeitrag - die Seite unter /problems/<slug>/solutions/<id>/<post-slug>/. Zum Beispiel:
https://leetcode.com/problems/two-sum/solutions/3619262/3-methods-c-java-python-beginner-friendl-x595/
https://leetcode.com/problems/two-sum/solutions/127810/two-sum-by-leetcode-kwuq/Response-Struktur
JSON-Response-Body. Feldtypen können null sein, wenn die Quellseite den Wert nicht enthält.
cpp.Beispiel-Response
{
"url": "https://leetcode.com/problems/two-sum/solutions/3619262/3-methods-c-java-python-beginner-friendl-x595/",
"id": "3619262",
"problem": "two-sum",
"problemUrl": "https://leetcode.com/problems/two-sum/",
"title": "✅3 Method's || C++ || JAVA || PYTHON || Beginner Friendly🔥🔥🔥",
"author": {
"name": "Rahul Varma",
"username": "rahulvarma5297",
"url": "https://leetcode.com/u/rahulvarma5297/"
},
"postedAt": "Jun 09, 2023",
"tags": [
"Array",
"Hash Table",
"C++",
"Java"
],
"views": 2368905,
"upvotes": 12000,
"comments": 285,
"content": "Intuition\n\nThe Two Sum problem asks us to find two numbers in an array that sum up to a given target value. We need to r...",
"contentHtml": "Intuition
\n\nThe Two Sum problem asks us to find two numbers in an array that sum up to a given...",
"codeBlocks": [
{
"language": "cpp",
"code": "class Solution {\npublic:\n vector twoSum(vector& nums, int target) {\n int n = nums.size();\n..."
}
]
}