用C语言写的爬虫项目
#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语言写的爬虫项目相关推荐
- 除了 Python ,这些语言写的机器学习项目也很牛(二)
2019独角兽企业重金招聘Python工程师标准>>> Python 由于本身的易用优势和强大的工具库储备,成为了在人工智能及其它相关科学领域中最常用的语言之一.尤其是在机器学习,已 ...
- 除了 Python ,这些语言写的机器学习项目也很牛
全世界只有3.14 % 的人关注了 数据与算法之美 Python 由于本身的易用优势和强大的工具库储备,成为了在人工智能及其它相关科学领域中最常用的语言之一.尤其是在机器学习,已然是各大项目最偏爱的语 ...
- python爬虫项目描述怎么写_爬虫项目咋写,爬取什么样的数据可以作为项目写在简历上?...
看样子,主要目的是上简历 如果你想要爬虫的offer,那么你的项目应该有这么几个特征: 能用常用的框架,必要时有能力修改框架甚至自己写一个 熟悉多线程多进程分布式等,对爬虫任务调度有很好的解决办法 采 ...
- c语言猜拳游戏实验报告,《猜拳小游戏》--一个c语言写的小项目
很久以前写的一个小项目,有兴趣的可以进来看看. 这个小项目主要包含以下信息和功能: 1.玩家信息--->(结构体)包含名字,密码,赢的场数, 总的场数,胜利比率 2.创建玩家 3.销毁玩家 4. ...
- golang笔记15--go语言单任务版爬虫
golang笔记15--go语言单任务版爬虫 1 介绍 2 单任务版爬虫 2.1 获得初始页面内容 2.2 正则表达式 2.3 提取城市和 url 2.4 单任务版爬虫的架构 2.5 Engine 与 ...
- 爬虫项目六:用Python爬下链家新房所有城市近三万条数据
文章目录 前言 一.分析url 二.拼接url 1.实例化chrome 2.获取首字符.page 3.拼接url 三.获取房源数据 前言 本文全面解析了链家新房源数据,爬取了全部城市的房源信息,共两万 ...
- 记一次C语言编写的爬虫 wininet 堆糖爬虫
对 没错 嗯 用C语言写的爬虫 首先,既然是爬虫,当然要能够访问网页,用C访问网页的方法也有很多,这里选择的是一种相对比较方便的wininet,用InternetOpenUrl打开url然后读取数据就 ...
- C++语言实现网络爬虫详细代码
最近有关注到某论坛在讨论网络爬虫用python或者java等语言写有多么多么好,其实这种没法具体说哪个好,只能说各自有各自的优点,下文就是关于我使用C++语言写的爬虫代码,对于我来说挺简单的,可以供大 ...
- golang笔记16--go语言并发版爬虫
golang笔记16--go语言并发版爬虫 1 介绍 2 并发版爬虫 2.1 并发版爬虫架构 2.2 简单调度器 2.3 并发调度器 2.4 队列实现调度器 2.5 重构和总结 2.6 更多城市 2. ...
- 自己帮别人写的网站可以公开源码吗_专注爬虫:20个精心总结爬虫项目,爬虫技术这里强(附源码)...
写在前面 你想成为Python爬虫的高手么?你想爬取你想要的高质量数据么? 那么你得需要进行爬虫项目的演练,那样你才有可能在Python爬虫的道路上走的更远 小编在这里精心总结了20个爬虫项目的演练, ...
最新文章
- 云解析DNS产品优势与应用场景
- oracle取字符串长度的函数length()和hengthb()
- bugku——分析(流量分析)题解
- dasblog的安装
- 万恶之源 - Python基础知识补充
- SpringBoot启动全流程源码解析(超详细版)
- 采用MATLAB的DSP调试方法
- HEVC测试序列网址和账号
- 用计算机遥感技术图片,卫星遥感影像数据是什么样格式的?
- 公众号平台的H5实现微信授权登录
- crontab定时执行任务命令详解及crontab 误删除恢复
- windows 实时自动同步两个文件夹
- ui设计培训课程是哪些
- swagger2接口文档
- Javascript_ES5_学习笔记
- 数据中台 画像标签_中台产品经理必懂(4):数据中台标签系统
- EXCEL-名称管理器
- bad_weak_ptr的原因
- Mac用户速度来看!!Adobe 全家桶关闭自动更新?
- 计算机室解说词云课堂,微机室解说词