C#爬虫通过代理刷文章浏览量

2020-01-05 09:14:19王振洲

redisHelper.cs


public class RedisHelper
 {
 private static readonly object Locker = new object();
 private static ConnectionMultiplexer _redis;
 private const string CONNECTTIONSTRING = "127.0.0.1:6379,DefaultDatabase=3";
 public const string REDIS_SET_KET_SUCCESS = "set_success_ip";
 private static ConnectionMultiplexer Manager
 {
  get
  {
  if (_redis == null)
  {
   lock (Locker)
   {
   if (_redis != null) return _redis;
   _redis = GetManager();
   return _redis;
   }
  }
  return _redis;
  }
 }
 private static ConnectionMultiplexer GetManager(string connectionString = null)
 {
  if (string.IsNullOrEmpty(connectionString))
  {
  connectionString = CONNECTTIONSTRING;
  }
  return ConnectionMultiplexer.Connect(connectionString);
 }
 public static void AddRequestOk(string key,string value,bool isSuccess)
 {
  var db = Manager.GetDatabase();
  if(isSuccess)
  db.ListLeftPush(key,value);
  else
  db.ListLeftPush(key, value);
 }
 public static List<string> GetProxy()
 {
  List<string> result = new List<string>();
  var db = Manager.GetDatabase();
  var values = db.SetMembers(REDIS_SET_KET_SUCCESS);
  foreach (var value in values)
  {
  result.Add(value.ToString());
  }
  return result;
 }
 public static bool InsertSet(string value)
 {
  var db = Manager.GetDatabase();
  return db.SetAdd(REDIS_SET_KET_SUCCESS, value);
 }
 public static bool RemoveSetValue(string value)
 {
  var db = Manager.GetDatabase();
  return db.SetRemove(REDIS_SET_KET_SUCCESS,value);
 }
 }


注:相关教程知识阅读请移步到c#教程频道。