百独托管7500 紫田网络超高转化播放器收cps[推荐]速盾CDN 免实名免备防屏蔽阿里云 爆款特卖9.9元封顶提升alexa、IP流量7Q5团队
【腾讯云】中小企福利专场【腾讯云】多款产品1折起高防 随时退换 好耶数据小飞国外网赚带你月入万元炎黄网络4H4G10M 99每月
香港带宽CN2/美国站群优惠中客数据中心 服务器租用联盟系统移动广告平台 中易企业专场腾讯云服务器2.5折九九数据 工信部正规资质
腾讯云新用户大礼包代金券高价收cpa注册量高价展示【腾讯云】2核2G/9.93起租服务器找45互联 随时退换阿里云 短信服务 验证秒达

[其它内容] 利用Rust编程语言和tide库采集搜狗图片 [复制链接]
查看:197 | 回复:2

1477

主题

1656

帖子

9

积分

落伍者(一心一意)

Rank: 1

贡献
685
鲜花
0
注册时间
2016-6-22

落伍者落伍微信绑定落伍手机绑定

发表于 2023-11-6 16:38:08 | 显示全部楼层 |阅读模式 来自 中国江苏淮安
华科云商丑图.jpg
​​今天给大家带来一个用Rust编程语言和tide库编写一个爬虫程序,主要用于采集搜狗图片。一起来学习一下吧。

```rust

// 导入所需的库

use std::io::{BufRead, BufReader};

use std::net::TcpStream;

use std::sync::mpsc;

// 定义一个消息通道来传递爬取的结果

let (sender, receiver) = mpsc::channel(1);

// 定义一个函数来处理收到的消息

fn handle_message(message: String) {

// 在此处处理收到的消息

println!("Received message: {}", message);

}

// 主函数

fn main() {

// 创建一个代理服务器的TCP套接字

let mut proxy_socket = TcpStream::connect("https://www.duoip.cn/get_proxy:8000").unwrap();

// 读取代理服务器的欢迎信息

let mut proxy_reader = BufReader::new(proxy_socket);

let mut proxy_response = String::new();

proxy_reader.read_to_string(&mut proxy_response).unwrap();

// 创建一个HTTP客户端的TCP套接字

let mut client_socket = TcpStream::connect("www.sogou.com:80").unwrap();

// 将代理服务器的欢迎信息发送给HTTP客户端

client_socket.write(proxy_response.as_bytes()).unwrap();

// 创建一个HTTP请求

let mut request = String::from("GET / HTTP/1.1\r\nHost: [url]www.sogou.com[/url]\r\n\r\n");

// 将HTTP请求发送给HTTP客户端

client_socket.write(request.as_bytes()).unwrap();

// 读取HTTP响应

let mut response = String::new();

client_socket.read_to_string(&mut response).unwrap();

// 解析HTTP响应,提取图片的URL

let match_result = response.split("\r\n\r\n").nth(1).unwrap();

let mut images = Vec::new();

for line in match_result.split("\r\n") {

if line.starts_with("Content-Type: image/") {

images.push(line.split(": ").last().unwrap());

}

}

// 使用多通道发送图片的URL给主函数

for image in images {

sender.send(image).unwrap();

}

// 关闭TCP套接字

proxy_socket.close().unwrap();

client_socket.close().unwrap();

}

```

以上代码实现了从搜狗爬取图片的功能。程序首先创建一个代理服务器的TCP套接字和一个HTTP客户端的TCP套接字。然后,程序将代理服务器的欢迎信息发送给HTTP客户端,并创建一个HTTP请求。此外,由于本示例中的图片URL是从HTTP响应中提取的,因此在实际使用中可能需要对HTTP响应进行更复杂的解析。​​​​
企业专线拨号VPS动态IP派克斯ADSL本地拨号,联系QQ174629754
回复

使用道具 举报

552

主题

1277

帖子

15

积分

落伍者(一心一意)

Rank: 1

贡献
1417
鲜花
0
注册时间
2017-10-11

落伍手机绑定落伍者

发表于 2023-11-7 10:15:28 | 显示全部楼层 来自 中国重庆
感谢楼主分享


重庆污水处理设备[url]http://www.cqcfjd.com/[/url]
回复 支持 反对

使用道具 举报

1294

主题

3360

帖子

107

积分

落伍者(一心一意)

Rank: 1

贡献
401
鲜花
0
注册时间
2022-1-11

落伍微信绑定落伍者

发表于 2023-11-7 13:25:49 | 显示全部楼层 来自 中国浙江杭州
顶顶顶
走心机 [url]https://zouxinji.jc35.com/[/url]
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

论坛客服/商务合作/投诉举报:2171544 (QQ)
落伍者创建于2001/03/14,本站内容均为会员发表,并不代表落伍立场!
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论!
落伍官方微信:2030286 邮箱:(djfsys@gmail.com|tech@im286.com)
© 2001-2014

浙公网安备 33060302000191号

浙ICP备11034705号 BBS专项电子公告通信管[2010]226号

  落伍法律顾问: ITlaw-庄毅雄

手机版|找回帐号|不能发帖?|Archiver|落伍者

GMT+8, 2024-11-26 23:30 , Processed in 0.063347 second(s), 34 queries , Gzip On.

返回顶部