网页抓取解密(Excel教程Excel函数Excel表格制作Excel2010Excel实用技巧Excel视频教程)
优采云 发布时间: 2021-09-30 07:05网页抓取解密(Excel教程Excel函数Excel表格制作Excel2010Excel实用技巧Excel视频教程)
先说一下我的目的:我想写一个小程序来分析双色球的走势并得出结果,然后再写一个算法来计算下一次开奖。它需要双色球多年来的所有记录,然后我需要捕捉所有的历史。分析一下开奖记录,这会是对单个网页的爬取和分析,因为需求比较小,所以每次都是一直爬就好了。
第一步是新建一个控制台程序,然后添加Nuget包HtmlAgilityPack
第二步,分析网站的网页内容和结构。
第三步是捕获和分析历史开奖结果:
<p>using HtmlAgilityPack;
using System;
using System.Data;
using System.Net;
namespace MyLottery
{
public class Program
{
public static void Main(string[] args)
{
Console.WriteLine("开始访问500彩票网...\r\n");
//500彩票网https://datachart.500.com/ssq/history/history.shtml
var htmlDoc = fromWeb(@"https://datachart.500.com/ssq/history/newinc/history.php?start=00001&end=99999");
var nodeCollection= htmlDoc.DocumentNode.SelectSingleNode("//tbody[@id='tdata']").ChildNodes;
var dataTable = new DataTable("双色球开奖历史记录表");
dataTable.Columns.Add("NUMBER", typeof(string));
dataTable.Columns.Add("R1", typeof(string));
dataTable.Columns.Add("R2", typeof(string));
dataTable.Columns.Add("R3", typeof(string));
dataTable.Columns.Add("R4", typeof(string));
dataTable.Columns.Add("R5", typeof(string));
dataTable.Columns.Add("R6", typeof(string));
dataTable.Columns.Add("B1", typeof(string));
Console.WriteLine("开始抓取历史开奖记录...\r\nNUMBER R1 R2 R3 R4 R5 R6 B1 ");
try
{
//这里是根据网站网页的结构自己解析
foreach (var row in nodeCollection)
{
if (row.Name == "tr")
{
var tr = dataTable.NewRow();
int index = 0;
foreach (var filed in row.ChildNodes)
{
if (filed.Name == "td" && index