【问题标题】:C# script to search through html [closed]通过 html 搜索的 C# 脚本 [关闭]
【发布时间】:2014-02-16 02:22:19
【问题描述】:

我正在尝试使用 C# 编写代码,该代码逐行读取具有两个字段(用户 ID、跟踪 ID)的访问数据库,并在以下 url 中设置每个用户 ID(将标签替换为用户 ID):

http://abcdef.comghijklmnopqrstuvwxyz<userid>?groups=<userid>

并搜索网页上显示的数据(数据为JSON格式)。如果出现与User ID同一记录的Track ID,则计数器加1。

    using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.OleDb;
using System.Net;

namespace test
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            OleDbConnection conn = new OleDbConnection();
            conn.ConnectionString = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\hidden.accdb";
            conn.Open();
            OleDbCommand cmd = new OleDbCommand();
            cmd.Connection = conn;
            cmd.CommandText = "Select * from hidden.accdb";
            DataTable dt = new DataTable();
            //To read data from dataset
            OleDbDataAdapter adapter = new OleDbDataAdapter();
            adapter.SelectCommand = cmd;
            //Store the UserID
            adapter.Fill(dt);
            conn.Close();
        }

        private void btn_run_Click(object sender, EventArgs e)
        {

            int UserID;
            int TrackID;
            int counter=0;
            for (int ID = 1; ID <= 2916; ID++)
            {

                string url = "http://abcdef.com/ghijklmnopqrstuvwxyz<userid>?groups=<userid>";
                string test = test.Replace("i", Convert.ToString(UserID));
                System.Diagnostics.Process.Start(url);
                string client = (new WebClient()).DownloadString("http://abcdef.com/ghijklmnopqrstuvwxyz<userid>?groups=<userid>");
                if (client.Contains(Convert.ToString(TrackID)))
                {
                    counter++;
                }
            }
int ave= counter/2916;
}
}
}

【问题讨论】:

  • 你的脚本在哪里..??
  • 我尝试输入我的代码但它显示错误?????????
  • 您是在问如何验证您编写的某些特定代码产生了您想要的结果吗?
  • 不知何故。我写了它,但它显示错误。
  • 它显示什么错误?你阅读了吗?你的问题是什么??

标签: c# screen-scraping


【解决方案1】:

你需要做的

var test = url.Replace("<userid>",Convert.ToString(UserID));

这不是你想要的吗?

【讨论】:

  • 谢谢。我做到了,现在将“conn.open()”显示为错误。
  • 还有错误吗?你的连接字符串错了吗?
  • 它显示有关连接字符串的错误。但它必须是正确的。我该如何检查它?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-05-18
  • 2018-11-02
  • 1970-01-01
  • 1970-01-01
  • 2012-03-14
相关资源
最近更新 更多