亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁(yè) > 編程 > C > 正文

如何優(yōu)雅地使用c語(yǔ)言編寫(xiě)爬蟲(chóng)的方法

2020-02-24 14:28:45
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

每個(gè)人都需要在和平時(shí)期或多或少地寫(xiě)網(wǎng)絡(luò)爬蟲(chóng),一般來(lái)說(shuō),Python是爬蟲(chóng)的首選,此外,Java和其他語(yǔ)言也是不錯(cuò)的選擇,本文是武林技術(shù)頻道小編為大家整理的如何優(yōu)雅地使用c語(yǔ)言編寫(xiě)爬蟲(chóng)的方法,一起進(jìn)入下文了解一下吧!

1、爬蟲(chóng)的特性

配置方便。使用一句設(shè)置函數(shù),即可定義user agent,cookie,timeout,proxy以及抓取線程和解析線程的最大數(shù)量。
程序邏輯獨(dú)立。用戶可以分別定義爬蟲(chóng)的解析函數(shù),和數(shù)據(jù)持久化函數(shù)。并且對(duì)于解析到的新url,用戶可以使用cspider提供的addUrl函數(shù),將其加入到任務(wù)隊(duì)列中。
便捷的字符串處理。cspider中提供了基于pcre的簡(jiǎn)單的正則表達(dá)式函數(shù),基于libxml2的xpath解析函數(shù),以及用于解析json的cJSON庫(kù)。
高效的抓取。cspider基于libuv調(diào)度抓取線程和解析線程,使用curl作為其網(wǎng)絡(luò)請(qǐng)求庫(kù)。
2、使用cspider的步驟

  • 獲取cspider_t。
  • 自定義user agent,cookie,timeout,proxy以及抓取線程和解析線程的最大數(shù)量。
  • 添加初始要抓取的url到任務(wù)隊(duì)列。
  • 編寫(xiě)解析函數(shù)和數(shù)據(jù)持久化函數(shù)。
  • 啟動(dòng)爬蟲(chóng)。

3、例子

先來(lái)看下簡(jiǎn)單的爬蟲(chóng)例子,會(huì)在后面詳細(xì)講解例子。

?

#include<cspider/spider.h>/*  自定義的解析函數(shù),d為獲取到的html頁(yè)面字符串*/void p(cspider_t *cspider, char *d, void *user_data) { char *get[100]; //xpath解析html int size = xpath(d, "http://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]); }}/*  數(shù)據(jù)持久化函數(shù),對(duì)上面解析函數(shù)中調(diào)用的saveString()函數(shù)傳入的數(shù)據(jù),進(jìn)行進(jìn)一步的保存*/void s(void *str, void *user_data) { char *get = (char *)str; FILE *file = (FILE*)user_data; fprintf(file, "%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"; //設(shè)置要抓取頁(yè)面的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"); //設(shè)置user agent cs_setopt_useragent(spider, agent); //cs_setopt_cookie(spider, cookie); //傳入解析函數(shù)和數(shù)據(jù)持久化函數(shù)的指針 cs_setopt_process(spider, p, NULL); //s函數(shù)的user_data指針指向stdout cs_setopt_save(spider, s, stdout); //設(shè)置線程數(shù)量 cs_setopt_threadnum(spider, DOWNLOAD, 2); cs_setopt_threadnum(spider, SAVE, 2); //FILE *fp = fopen("log", "wb+"); //cs_setopt_logfile(spider, fp); //開(kāi)始爬蟲(chóng) return cs_run(spider);}

例子講解

cspider_t *spider = init_cspider();獲取初始的cspider。cs_setopt_xxx這類函數(shù)可以用來(lái)進(jìn)行初始化設(shè)置。其中要注意的是: cs_setopt_process(spider,p,NULL);cs_setopt_save(spider,s,stdout);,它們分別設(shè)置了解析函數(shù)p和數(shù)據(jù)持久化函數(shù)s,這兩個(gè)函數(shù)需要用戶自己實(shí)現(xiàn),還有用戶自定義的指向上下文信息user_data的指針。在解析函數(shù)中,用戶要定義解析的規(guī)則,并對(duì)解析得到的字符串可以調(diào)用saveString進(jìn)行持久化,或者是調(diào)用addUrl將url加入到任務(wù)隊(duì)列中。在saveString中傳入的字符串會(huì)在用戶自定義的數(shù)據(jù)持久函數(shù)中得到處理。此時(shí),用戶可以選擇輸出到文件或數(shù)據(jù)庫(kù)等。
最后調(diào)用cs_run(spider)即可啟動(dòng)爬蟲(chóng)。

以上就是如何優(yōu)雅地使用c語(yǔ)言編寫(xiě)爬蟲(chóng)的方法,如果你還是有不清楚的地方,你可以隨時(shí)來(lái)關(guān)注武林技術(shù)頻道小編為大家推薦的知識(shí),感謝你對(duì)武林技術(shù)頻道的支持。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表

圖片精選

99精品免费观看| eeuss性xxxxxx电影| 国内视频一区二区| dy888夜精品国产专区| 九色视频网站| 成人乱色短篇合集| 欧美精品v日韩精品v韩国精品v| 激情五月激情综合| 欧美在线免费视屏| 在线免费三级电影网站| 在线观看国产一区二区三区| 美女免费视频黄| 久久国产视频精品| 秋霞在线午夜| 神马久久久久久久久久| 撸视在线观看免费视频| 精品少妇人妻av一区二区三区| 亚洲国产成人精品久久| 国产成人77亚洲精品www| 日韩在线中文字幕| 国产午夜福利视频在线观看| 99麻豆久久久国产精品免费优播| 高清中文字幕一区二区三区| 一级日本免费的| 国产+高潮+白浆+无码| 国产精品日韩欧美一区| 公交车上扒开嫩j挺进去| 日韩欧美亚洲成人| mm131美女视频| 亚洲免费观看在线观看| 青娱乐在线视频观看| 大桥未久av一区二区三区| 91精品人妻一区二区三区蜜桃欧美| 久久九九精品视频| 日本高清www| 亚洲欧洲成人精品av97| 91精品国产九九九久久久亚洲| 日韩精品欧美激情| 一二三四日本中文字幕| 国产资源在线一区| 国内精品久久久久久不卡影院| 日本中文字幕成人| 意大利激情丛林无删减版dvd| 美女在线不卡| 一区二区三区在线免费看| 日本成人7777| 深夜福利网站| 欧美乱妇一区二区三区不卡视频| 欧美一区二不卡视频| 狠狠色综合色综合网络| 日韩伦理在线电影| 国产精品美女视频| 中文字幕第三页| 婷婷综合久久| 久久免费视频观看| 欧美成人影院在线播放| 在线观看欧美日韩| 国产乱视频在线观看播放| 国产精品yjizz| av网站大全免费| 榴莲视频成人app| 色94色欧美sute亚洲线路二| 日本熟妇一区二区三区| 国产激情欧美| 一区二区三区免费看| 在线国产网址| 天堂影院在线| 亚洲精品一区二区二区| 欧美日韩中文字幕在线视频| 亚洲va韩国va欧美va精品| 亚洲第一二三四区| 一区二区三区四区不卡视频| x88av蜜桃臀一区二区| 大陆av在线播放| 日韩在线激情| 欧美三级理伦电影| 欧美激情videoshd| 日韩av成人在线观看| 亚洲专区中文字幕| 福利电影一区二区| 久久人人97超碰国产公开结果| 日本福利片免费看| 亚洲第一综合天堂另类专| 91在线网站| 激情欧美丁香| 国产成人免费视频一区| 欧美国产视频日韩| 性色88av老女人视频| 美国一区二区三区在线播放| 国产精品一区二区在线观看不卡| 最近免费中文字幕在线第一页| 最新免费av网址| 亚洲欧美成人一区二区三区| 国产精品12区| 熟女少妇在线视频播放| 欧美黑人国产人伦爽爽爽| 四川一级毛毛片| 精品一区二区三区日本| 成人亚洲综合色就1024| 最新精品国偷自产在线| 成人免费视频视频| 91精品xxx在线观看| 色哟哟一区二区在线观看| 中文字幕欧美三区| 视频二区在线观看| 麻豆md0077饥渴少妇| 欧美污在线观看| 顶级嫩模精品视频在线看| 18av.com视频| 欧美一区二区三区久久综| 久久精品国产免费观看99| 一本久道久久久| 亚洲精品亚洲人成在线观看| 国产天堂素人系列在线视频| 久久人人88| 美女被搞网站| 亚洲精品久久久久中文字幕欢迎你| 无码精品一区二区三区在线播放| 亚洲午夜精品久久| 亚洲精品无人区| 久久福利资源站| 天堂网免费视频| 0608新视觉| 国产精品亚洲一区二区三区在线| 久久日.com| 日本大臀精品| 热久久99这里有精品| 国产美女视频免费观看下载软件| 亚洲精品成人少妇| 亚洲精品国产一区二| 日韩一区二区高清| 在线视频一二区| xxav国产精品美女主播| 日韩一区二区三区色| 精品美女一区| 婷婷电影在线观看| 日韩高清在线电影| 好看的av在线不卡观看| 欧美日韩一区二区在线视频| 91麻豆福利| 欧美激情另类| 国模精品视频| 成人激情视频在线观看| 国产精欧美一区二区三区白种人| 色综合久久久| 成人av电影在线播放| 国产精品毛片大码女人| 在线观看国产小视频| 国产精品无码AV| 国产一区二区三区久久精品| 亚洲 日韩 国产第一区| 色婷婷综合久久久久中文| 好男人看片在线观看免费观看国语| 欧美国产1区2区| 色综合视频一区二区三区高清| 欧美三级欧美成人高清www| 亚洲视频一二三区| www.国产.com| 久久精品午夜一区二区福利| 国内精品久久久久久影院8f| √新版天堂资源在线资源| 99久久99久久精品国产片果冻| 米奇777在线影院线| 免费黄网在线观看| 中文字幕视频观看| a级片国产精品自在拍在线播放| 国产一卡二卡三卡四卡| 羞羞电影在线观看www| 成人午夜在线影院| 久久久久无码精品国产| 黑人巨大猛交丰满少妇| 尤物在线视频| 天天做天天摸天天爽天天爱| 欧美主播一区二区三区美女 久久精品人| 99国产精品久久久久99打野战| 精品国产1区| 中文字幕无码精品亚洲35| 国产精品欧美日韩久久| 久久国产午夜精品理论片最新版本| 青青青国产精品一区二区| 国产日韩免费视频| 中文字幕 亚洲一区| 日韩一卡二卡三卡四卡| 国产精品分类| 91精品美女在线| 国产91在线观看| 欧美高清视频在线| 91在线观看喷潮| 亚洲视频专区在线| 日韩精品www| 国产成人高潮免费观看精品| 日本高清视频免费观看| www国产亚洲精品久久麻豆| 福利小视频在线观看| 99久久免费精品国产免费| avav成人| 久久精品视频网站| 91xxx视频| 亚洲成av人片一区二区三区| 欧美性xxxxx极品少妇| 欧美激情性xxxxx| a天堂在线观看| 欧美精品激情在线观看| 91精品在线免费观看| 婷婷精品视频| 午夜av入18在线| 奇米888一区二区三区| 一区二区日韩在线观看| 午夜精品久久久久久久四虎美女版| www.男人的天堂.com| 日韩精品一区二区三区外面| 日韩欧美99| 精品亚洲aⅴ无码一区二区三区| 欧洲日本亚洲国产区| 日韩成人激情| 欧美成人午夜做爰视频在线观看| 欧美毛片又粗又长又大| 麻豆映画在线观看| 成人在线视频网站| 不用播放器成人网| 国产极品精品在线观看| 成人国产一区二区| 日本成人在线免费| 亚洲免费av片| 国产精品黑丝在线播放| 最新国产精品久久精品| 992tv在线观看免费进| 九一久久久久久| 一二三在线视频| 国产中文字幕亚洲| 久久久久久av无码免费看大片| 亚洲成人免费在线视频| 精品视频在线观看| 精品国产乱码91久久久久久网站| 国产精品国产一区二区| 欧美激情自拍偷拍| 午夜小视频免费| 影音先锋男人的网站| 日本精品久久久久久久久久| 99久久免费国产| 国产亚洲成av人片在线观看| xxxx在线视频| 久久久久国产一区二区| 欧美日韩不卡一区| 精品国产一二三区| 久久精品久久久| 成人动漫视频| 午夜激情一区二区三区| 欧美夫妻性生活| 国产三级中文字幕| 美女被黑人40厘米进入| 日韩欧美精品久久| 国产成人久久精品77777综合| 黄网在线观看网址入口| 亚洲欧洲精品视频| 625成人欧美午夜电影| 内射国产内射夫妻免费频道| 天堂精品中文字幕在线| 欧美日韩视频网站| 成人激情电影在线| 成人黄色影片在线| 亚洲免费观看视频| 欧美亚洲成人精品| 色综合影院在线| 色婷婷在线视频| 性感小视频在线看免费| 午夜大片在线观看| 亚洲区一区二区三区| 在线人成动漫视频在线观看| 成人av国产| 久久久久久久久免费| 夜夜躁日日躁狠狠久久av| 污污视频在线观看网站| 99re视频在线观看| 欧美aaaaa成人免费观看视频| 色一情一乱一伦一区二区三欧美| 综合婷婷亚洲小说| 国产成人羞羞电影网站在线观看| 日韩在线一区二区三区免费视频| 成年人黄色大片在线| 国产三级国产精品国产国在线观看| 久99久精品视频免费观看| 亚洲人精品午夜在线观看| 国产精品成人av性教育| 91嫩草国产线观看亚洲一区二区| 成人性生交大片免费观看网站| 波多野结衣久久久久| 国产日韩欧美视频| 三级黄色片在线观看| jk破处视频在线| 国产麻豆精品一区二区| 激情婷婷综合网| 亚洲成人网在线| 免费a级毛片在线播放| 国产中文精品久高清在线不| eeuss影院www在线观看手机| 欧美三级日本三级少妇99| 欧美久久久久久久久久久久久久| 成人精品高清在线| 欧美精品一区二区不卡| 国产精品对白刺激久久久| 91偷拍精品一区二区三区| 粉嫩粉嫩芽的虎白女18在线视频| 九九久久国产精品| 少妇精品视频在线观看| 久久99精品国产自在现线小黄鸭| 日本不卡一二区| 亚洲自拍小视频免费观看| 亚洲欧美日韩中文在线| 97超碰人人干| 欧美日韩一区二区三区不卡视频| 日韩欧美高清视频| 午夜视频久久久久久| 亚洲国产另类 国产精品国产免费| 完全免费av在线播放| 日韩美女免费线视频| 久久99国产精一区二区三区| 久操视频在线| 国产av无码专区亚洲av| 成人毛片视频免费看| 麻豆传传媒久久久爱| 99re在线视频免费观看| 中文av字幕| 秋霞一区二区三区| 狠狠色噜噜狠狠狠888奇米| aa在线免费观看| 狠狠躁夜夜躁人人爽视频| 91精品天堂福利在线观看|