网站内容抓取(用UploadValuesPOST数据用UploadData抓取网页用DownloadData或OpenRead抓取)
优采云 发布时间: 2021-12-18 20:11网站内容抓取(用UploadValuesPOST数据用UploadData抓取网页用DownloadData或OpenRead抓取)
我们知道WebRequest(HttpWebRequest,FtpWebRequest)和WebResponse(HttpWebResponse,FtpWebResponse)可以用来下载和上传文件,以及网页抓取,但是使用WebClient更容易一些。
如果我们使用中文,请注意:WebClient 必须指定编码。
使用 DownloadFile 下载网页
这样首页就保存在C盘下了。
使用 DownloadString 抓取网页
使用 DownloadData 或 OpenRead 抓取网页
我们将抓取到的网页赋值给变量str,让我们使用。您还可以使用 OpenRead 方法来获取数据流。
使用 UploadFile 上传文件
与DownloadData 和OpenRead 相比,WebClient 也有UploadData 和OpenWrite 方法,但最常用的方法大概是上传文件,即uploadFile。
注意UploadFile的第一个参数,这里是ftp,所以加上上传后形成的文件名,也就是说不能是:ftp:///。如果是http,则不存在,指定处理哪个文件即可。
使用 UploadValues 发布数据
使用 UploadData 以任何格式上传数据
UploadData就是上传指定的二进制数据,任何格式都可以,可以上传文件,可以上传普通表单数据,也可以上传混合数据,这都取决于我们如何构建这个二进制文件。还可以解决UploadFile无法指定文件名的问题。
这种格式请参考:upload file data format,file upload format,但是header部分(Upgrade-Insecure-Requests:1和目标文档例子中的前一行)不要直接放在byte[] , 但由 client.Headers.Add 指定,例如:
指定用户代理