本代码作用:通过python的crapy框架的xpath功能获取网址(http://www.yikexun.cn/duanzi/)段子的标题。
操作步骤如下:
一、去CMD里新建项目,新建爬虫
1、按win+r,输入cmd进入命令提示符窗口。
2、依次输入命令:
①cd c:\python ——切换到c盘的python目录
②scrapy project test3 ——创建test3项目
③cd test3 ——切换到test3目录
④scrapy genspider yikexun yikexun.cn/duanzi/ ——创建爬虫,爬虫名为yikexun,爬取网址为yikexun.cn/duanzi/
二、去pycharm里打开test3目录并开始编写代码
1、设置settings.py文件的ROBOTSTXT_OBEY = False,并在DEFAULT_REQUEST_HEADERS里设置请求头
'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36'
图片示例如下:
2、进入test3/spiders/yikexun.py文件里编写代码
因段子标题都是在div标签的
# -*- coding: utf-8 -*-
import scrapy
import re
class QsbkSpider(scrapy.Spider):
name = 'yikexun'
allowed_domains = ['http://www.yikexun.cn/duanzi/']
start_urls = ['http://www.yikexun.cn/duanzi/']
def parse(self, response):
result1=response.xpath('//div[@class="art-t"]/h3/a/text()').extract()
print(result1)
result2=response.xpath('//div[@class="art-t"]/h3/a/b/text()').extract()
print(result2)
为了方便在pycharm中运行代码,故在test3目录下新建了一个run.py文件,在run.py文件里输入代码:
from scrapy import cmdline
cmdline.execute("scrapy crawl yikexun".split()) #执行命令,命令是scrapy crawl yikexun
在run.py文件的空白处,右键选择Run 'run'或者按住ctrl+shift+F10执行运行代码的命令
代码运行结果如下图所示:
最终获取到的结果是:
['中央派来的', '9个超级冷静的段子,我想静静!', '20条经典搞笑段子']
['2017年最受欢迎的幽默段子', '新年好心情,搞笑段子笑不停!', '经典搞笑段子:讲一件事,证明你是女汉子!笑惨了~', '58条经典搞笑段子:小明,滚出去!', '20条经典搞笑句子,猜你个姥姥啊!下一个!', '18则戳中泪点的经典段子,看到第三条我就忍不住了', '十条感悟人生的经典段子,太经典了。', '8条感悟颇深的经典段子,值得收藏', '13条感悟人生的经典段子,送给迷茫的朋友', '18条触动心情的经典段子,很有感触', '二十六条超有爱的段子,心都要融化了', '40条搞笑段子,笑死人不偿命']
本文来自投稿,不代表本人立场,如若转载,请注明出处:http://www.souzhinan.com/kj/268640.html