#include<cspider/spider.h>

/*
    自定义的解析函数,d为获取到的html页面字符串
*/
void p(cspider_t *cspider, char *d) {

char *get[100];
  //xpath解析html
  int size = xpath(d, "//body/div[@class='wrap']/div[@class='sort-column area']/div[@class='column-bd cfix']/ul[@class='st-list cfix']/li/strong/a", get, 100);

int i;
  for (i = 0; i < size; i++) {
  //将获取到的电影名称,持久化
    saveString(cspider, get[i]);
  }

}
/*
    数据持久化函数,对上面解析函数中调用的saveString()函数传入的数据,进行进一步的保存
*/
void s(void *str) {
  char *get = (char *)str;
  printf("%s\n", get);
  return;
}

int main() {
  //初始化spider
  cspider_t *spider = init_cspider();
  char *agent = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:42.0) Gecko/20100101 Firefox/42.0";
  //char *cookie = "bid=s3/yuH5Jd/I; ll=108288; viewed=1130500_24708145_6433169_4843567_1767120_5318823_1899158_1271597; __utma=30149280.927537245.1446813674.1446983217.1449139583.4; __utmz=30149280.1449139583.4.4.utmcsr=accounts.douban.com|utmccn=(referral)|utmcmd=referral|utmcct=/login; ps=y; ue=965166527@qq.com; dbcl2=58742090:QgZ2PSLiDLQ; ck=T9Wn; push_noty_num=0; push_doumail_num=7; ap=1; __utmb=30149280.0.10.1449139583; __utmc=30149280";

//设置要抓取页面的url
  cs_setopt_url(spider, "so.tv.sohu.com/list_p1100_p20_p3_u5185_u5730_p40_p5_p6_p77_p80_p9_2d1_p101_p11.html");
  //设置user agent
  cs_setopt_useragent(spider, agent);
  //cs_setopt_cookie(spider, cookie);
  //传入解析函数和数据持久化函数的指针
  cs_setopt_process(spider, p);
  cs_setopt_save(spider, s);
  //设置线程数量
  cs_setopt_threadnum(spider, DOWNLOAD, 2);
  cs_setopt_threadnum(spider, SAVE, 2);
  //FILE *fp = fopen("log", "wb+");
  //cs_setopt_logfile(spider, fp);
  //开始爬虫
  return cs_run(spider);
}

用C语言写的爬虫项目相关推荐

  1. 除了 Python ,这些语言写的机器学习项目也很牛(二)

    2019独角兽企业重金招聘Python工程师标准>>> Python 由于本身的易用优势和强大的工具库储备,成为了在人工智能及其它相关科学领域中最常用的语言之一.尤其是在机器学习,已 ...

  2. 除了 Python ,这些语言写的机器学习项目也很牛

    全世界只有3.14 % 的人关注了 数据与算法之美 Python 由于本身的易用优势和强大的工具库储备,成为了在人工智能及其它相关科学领域中最常用的语言之一.尤其是在机器学习,已然是各大项目最偏爱的语 ...

  3. python爬虫项目描述怎么写_爬虫项目咋写,爬取什么样的数据可以作为项目写在简历上?...

    看样子,主要目的是上简历 如果你想要爬虫的offer,那么你的项目应该有这么几个特征: 能用常用的框架,必要时有能力修改框架甚至自己写一个 熟悉多线程多进程分布式等,对爬虫任务调度有很好的解决办法 采 ...

  4. c语言猜拳游戏实验报告,《猜拳小游戏》--一个c语言写的小项目

    很久以前写的一个小项目,有兴趣的可以进来看看. 这个小项目主要包含以下信息和功能: 1.玩家信息--->(结构体)包含名字,密码,赢的场数, 总的场数,胜利比率 2.创建玩家 3.销毁玩家 4. ...

  5. golang笔记15--go语言单任务版爬虫

    golang笔记15--go语言单任务版爬虫 1 介绍 2 单任务版爬虫 2.1 获得初始页面内容 2.2 正则表达式 2.3 提取城市和 url 2.4 单任务版爬虫的架构 2.5 Engine 与 ...

  6. 爬虫项目六:用Python爬下链家新房所有城市近三万条数据

    文章目录 前言 一.分析url 二.拼接url 1.实例化chrome 2.获取首字符.page 3.拼接url 三.获取房源数据 前言 本文全面解析了链家新房源数据,爬取了全部城市的房源信息,共两万 ...

  7. 记一次C语言编写的爬虫 wininet 堆糖爬虫

    对 没错 嗯 用C语言写的爬虫 首先,既然是爬虫,当然要能够访问网页,用C访问网页的方法也有很多,这里选择的是一种相对比较方便的wininet,用InternetOpenUrl打开url然后读取数据就 ...

  8. C++语言实现网络爬虫详细代码

    最近有关注到某论坛在讨论网络爬虫用python或者java等语言写有多么多么好,其实这种没法具体说哪个好,只能说各自有各自的优点,下文就是关于我使用C++语言写的爬虫代码,对于我来说挺简单的,可以供大 ...

  9. golang笔记16--go语言并发版爬虫

    golang笔记16--go语言并发版爬虫 1 介绍 2 并发版爬虫 2.1 并发版爬虫架构 2.2 简单调度器 2.3 并发调度器 2.4 队列实现调度器 2.5 重构和总结 2.6 更多城市 2. ...

  10. 自己帮别人写的网站可以公开源码吗_专注爬虫:20个精心总结爬虫项目,爬虫技术这里强(附源码)...

    写在前面 你想成为Python爬虫的高手么?你想爬取你想要的高质量数据么? 那么你得需要进行爬虫项目的演练,那样你才有可能在Python爬虫的道路上走的更远 小编在这里精心总结了20个爬虫项目的演练, ...

最新文章

  1. 云解析DNS产品优势与应用场景
  2. oracle取字符串长度的函数length()和hengthb()
  3. bugku——分析(流量分析)题解
  4. dasblog的安装
  5. 万恶之源 - Python基础知识补充
  6. SpringBoot启动全流程源码解析(超详细版)
  7. 采用MATLAB的DSP调试方法
  8. HEVC测试序列网址和账号
  9. 用计算机遥感技术图片,卫星遥感影像数据是什么样格式的?
  10. 公众号平台的H5实现微信授权登录
  11. crontab定时执行任务命令详解及crontab 误删除恢复
  12. windows 实时自动同步两个文件夹
  13. ui设计培训课程是哪些
  14. swagger2接口文档
  15. Javascript_ES5_学习笔记
  16. 数据中台 画像标签_中台产品经理必懂(4):数据中台标签系统
  17. EXCEL-名称管理器
  18. bad_weak_ptr的原因
  19. Mac用户速度来看!!Adobe 全家桶关闭自动更新?
  20. 计算机室解说词云课堂,微机室解说词

热门文章

  1. 【Lua指南】lua脚本世界--快速入门
  2. aip格式转化为pdf,catia的三维图转PDF格式咋弄
  3. paip.一千 常用汉字 高频汉字 覆盖率90%
  4. 概率论与数理统计 积分表(高等数学附录)
  5. 购票系统c语言座位分配,铁路购票系统的简单座位分配算法
  6. 利用工具的SQL注入实战
  7. Android Studio Gradle下载慢解决方法
  8. 环境试验箱GB/T 2423标准下载合集
  9. 阿里巴巴Java开发手册(原文地址)
  10. BUUCTF-Misc-No.3