Lztkdr.SeleniumSpider
1.2.0
dotnet add package Lztkdr.SeleniumSpider --version 1.2.0
NuGet\Install-Package Lztkdr.SeleniumSpider -Version 1.2.0
<PackageReference Include="Lztkdr.SeleniumSpider" Version="1.2.0" />
paket add Lztkdr.SeleniumSpider --version 1.2.0
#r "nuget: Lztkdr.SeleniumSpider, 1.2.0"
// Install Lztkdr.SeleniumSpider as a Cake Addin #addin nuget:?package=Lztkdr.SeleniumSpider&version=1.2.0 // Install Lztkdr.SeleniumSpider as a Cake Tool #tool nuget:?package=Lztkdr.SeleniumSpider&version=1.2.0
// 使用示例:
//最大池为5的谷歌浏览器池,默认先打开 sannysoft
using BrowserMgr mgr = BrowserMgr.Instance("https://bot.sannysoft.com", 5);
//using BrowserMgr mgr = BrowserMgr.Instance(5, DriverConfig.Spider("https://bot.sannysoft.com", null, DeviceType.Pad));
//先尝试关闭所有驱动以及浏览器
//mgr.Dispose();
mgr.BrowserInit += browser =>
{
};
mgr.BrowserRecovery += browser =>
{
};
var lstTask = new List<Task>();
//处理10条数据
for (int j = 0; j < 10; j++)
{
//启动线程
var task = Task.Run(() =>
{
//具体爬取逻辑
mgr.DoWork(browser =>
{
var driver = browser.Driver;
var jsArgs = browser.JSArgs;
var xhrArgs = browser.XHRArgs;
// 业务逻辑
});
});
lstTask.Add(task);
}
Task.WaitAll(lstTask.ToArray());
```
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
- Microsoft.Extensions.ObjectPool (>= 6.0.1)
- Selenium.Support (>= 4.1.0)
- Selenium.WebDriver (>= 4.1.0)
- Selenium.WebDriverBackedSelenium (>= 4.1.0)
- Serilog (>= 2.10.0)
- Serilog.Sinks.Console (>= 4.0.1)
- Serilog.Sinks.File (>= 5.0.0)
- System.Drawing.Common (>= 4.7.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
``` csharp
// 使用示例:
//最大池为5的谷歌浏览器池,默认先打开 sannysoft
using BrowserMgr mgr = BrowserMgr.Instance("https://bot.sannysoft.com/", 5);
//using BrowserMgr mgr = BrowserMgr.Instance(5, DriverConfig.Spider("https://bot.sannysoft.com/", null, DeviceType.Pad));
//先尝试关闭所有驱动以及浏览器
//mgr.Dispose();
mgr.BrowserInit += browser =>
{
};
mgr.BrowserRecovery += browser =>
{
};
var lstTask = new List<Task>();
//处理10条数据
for (int j = 0; j < 10; j++)
{
//启动线程
var task = Task.Run(() =>
{
//具体爬取逻辑
mgr.DoWork(browser =>
{
var driver = browser.Driver;
var jsArgs = browser.JSArgs;
var xhrArgs = browser.XHRArgs;
// 业务逻辑
});
});
lstTask.Add(task);
}
Task.WaitAll(lstTask.ToArray());
```