使用pycharm工具,采用scrapy爬虫框架,抓取平顶山学院新闻网(http://news.pdsu.edu.cn/)站上的内容,具体要求:抓取新闻栏目,将结果写入lm.txt。
我知道很多人找到了博客,但是我就是要再写一篇,没有为什吗,就是因为我看不懂他们写的。pycharm的安装库都和另一个不一样,这个会一样吗?这个题的第一步我们需要已经安装好了的库,不会的看上一篇博客博客链接我们打开pycharm,找到View --> Tool Windows --> Terminal(这个意思是终端就相当于一个cmd的窗口,只不过在pycharm中),然后我们会看到一个
·
我知道很多人找到了博客,但是我就是要再写一篇,没有为什吗,就是因为我看不懂他们写的。
pycharm的安装库都和另一个不一样,这个会一样吗?
这个题的第一步我们需要已经安装好了的库,不会的看上一篇博客博客链接
我们打开pycharm,找到View --> Tool Windows --> Terminal(这个意思是终端就相当于一个cmd的窗口,只不过在pycharm中),然后我们会看到一个路径
没有也没有关系,我们用命令行的方式走一个就行,such as
cd D:\python
然后你输入
scrapy startproject suibian
#scrapy startproject 项目名
我们发现多了点东西
接着走,
cd xinwen
进入xinwen的目录中,执行
scrapy genspider lm news.pdsu.edu.cn
#这里边lm是文件名称,news.pdsu.edu.cn 是你要爬取的域名
执行
scrapy crawl lm
然后你看图中多了一个文件lm.py,毫不犹豫的打开,粘贴下面代码
# -*- coding: utf-8 -*-
import scrapy
from bs4 import BeautifulSoup
import re
class lmSpider(scrapy.Spider):
name = 'lm'
allowed_domains = ['pdsu.cn']
start_urls = ['http://news.pdsu.edu.cn/']
def parse(self, response):
html_doc = response.text
soup = BeautifulSoup(html_doc, 'html.parser')
re = soup.find_all('h2', class_='fl')
content = ''
for lm in re:
print(lm.text)
content += lm.text + '\n'
with open('e:\\lm.txt', 'a+') as fp:
fp.writelines(content)
# 文章内容保存在e盘的lm.text中
然后你就能看你的E盘
至此完结。
更多推荐
已为社区贡献1条内容
所有评论(0)