一个用Haskell编写的使用http-conduit库的爬虫程序爬取喜马拉雅的图片

这是一个用Haskell编写的使用http-conduit库的爬虫程序,它将爬取https://www.ximalaya.com/上的图片。代码必须使用以下代码:代理主机:www.duoip.cn,代理端口:8000。
import Network.HTTP.Conduit
import Data.Text (Text)

-- 定义常量
proxy_host = "www.duoip.cn"
proxy_port = 8000

-- 通过代理连接到目标网站
conn = connectHTTP proxy_host proxy_port

-- 定义URL
url = "https://www.ximalaya.com/"

-- 发送GET请求
req = liftIO $ simpleHTTP $ do
  resp <- request conn GET url
  case resp of
    Left err -> error $ show err
    Right body -> do
      -- 解析响应体为Text
      txt <- liftIO $ responseBody body
      -- 提取图片链接
      let links = extractImageLinks txt
      -- 输出图片链接
      mapM_ putStrLn links

-- 提取图片链接
extractImageLinks :: Text -> [Text]
extractImageLinks txt = [x | x <- words txt, isImageLink x]
  where
    isImageLink :: Text -> Bool
    isImageLink x = all isDigit $ dropWhile (/= '/') x
这个程序只是一个基本的爬虫,它只提取了页面上的所有图片链接,并没有进一步处理这些链接或者下载图片。在实际使用中,你可能需要根据具体的需求进行修改和扩展。同时,使用爬虫时需要注意遵守网站的使用规定,不要进行非法或有害的操作。
  • 7
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值