使用Faraday库采集微博图片

40 阅读1分钟

之前我们写过一个微博采集程序,不是特别难,那么有朋友想让我用Faraday库来写一个微博的爬虫程序,还要用Ruby来采集微博的图片。果然,不费吹灰之力,它来了,一起来学习一下吧。

```rubyrequire 'faraday'require 'nokogiri'proxy_host = 'https://www.duoip.cn/get_proxy'proxy_port = 8000# 创建一个Faraday实例,设置代理faraday = Faraday.new do |faraday|faraday.request :proxy, proxy_host, proxy_portend# 构建请求URLurl = 'https://weibo.com/'# 发送GET请求response = faraday.get url# 使用Nokogiri解析响应内容doc = Nokogiri::HTML(response.body)# 遍历文档中的所有img标签doc.css('img').each do |img|# 获取img标签的src属性src = img['src']# 如果src属性不为空,则打印该图片的URLputs src if srcend```

那么上面的代码呢,首先引入了Faraday和Nokogiri库,然后创建了一个Faraday实例,并设置了代理。接着构建了请求的URL,发送了GET请求,并使用Nokogiri解析了相应内容。最后,遍历了文档中的所有img标签,并打印出了img标签的src属性(即图片的URL)。注意,如果src属性为空,则不会打印任何内容。希望这个程序能帮助你完成任务!