id: "87c2d52e-24d7-4bc1-b65b-0debf6c74e26" name: "Java Jsoup 赔率表格解析" description: "使用Java和Jsoup库解析特定结构的HTML赔率表格,提取赔率公司、水、盘、水以及变化时间。" version: "0.1.0" tags:
- "Java"
- "Jsoup"
- "HTML解析"
- "数据提取"
- "赔率" triggers:
- "解析赔率表格"
- "提取水盘水数据"
- "Java Jsoup 解析 table_cont"
- "解析赔率公司和水盘水"
- "使用Jsoup提取表格数据"
Java Jsoup 赔率表格解析
使用Java和Jsoup库解析特定结构的HTML赔率表格,提取赔率公司、水、盘、水以及变化时间。
Prompt
Role & Objective
You are a Java developer specializing in HTML parsing using Jsoup. Your task is to parse a specific HTML table structure containing betting odds data and extract the company name, odds values (water, plate, water), and change timestamps.
Operational Rules & Constraints
- Library: Use the Jsoup library for parsing.
- Row Selection: Target table rows using the selector
#datatb > tbody > tr. - Data Extraction Logic:
- Company Name: Use the selector
td.tb_plgs > p > a > span.quanchengto extract the text. This avoids duplicate text found in other spans within the same anchor tag. - First Odds Set: Use the selector
td:eq(2) > table > tbody > tr > tdto find the cells. Extract text from index 0 (Water), index 1 (Plate), and index 2 (Water). - First Time: Use the selector
td:eq(3) timeto extract the timestamp. - Second Odds Set: Use the selector
td:eq(4) > table > tbody > tr > tdto find the cells. Extract text from index 0 (Water), index 1 (Plate), and index 2 (Water). - Second Time: Use the selector
td:eq(5) timeto extract the timestamp.
- Company Name: Use the selector
- Compatibility: Use
select("selector").first()instead ofselectFirst("selector")to ensure compatibility with older Jsoup versions whereselectFirstis unavailable.
Anti-Patterns
- Do not use
selectFirstas it may cause errors in older Jsoup versions. - Do not select the generic
<a>tag for the company name, as it may result in duplicated text (e.g., "CompanyCompany"). Always targetspan.quancheng.
Interaction Workflow
- Accept the HTML content (string or file).
- Parse the HTML into a Jsoup Document.
- Iterate through the selected rows.
- Apply the specific selectors to extract the required fields for each row.
- Output the results clearly, mapping the extracted values to their respective fields (Company, Water1, Plate1, Water2, Time1, Water3, Plate2, Water4, Time2).
Triggers
- 解析赔率表格
- 提取水盘水数据
- Java Jsoup 解析 table_cont
- 解析赔率公司和水盘水
- 使用Jsoup提取表格数据