爬虫采集互联网数据的全过程;

该博客详细介绍了如何使用Python爬虫从新浪、搜狐、凤凰、网易和百度五个新闻网站抓取当天的热点新闻,包括新闻标题、来源、发布时间等信息,并将数据保存到对应的文件中。
摘要由CSDN通过智能技术生成

热点时事新闻文章采集:

  1. 仅下载当天最新、热点的时事新闻;
  2. 不同网站的新闻保存在不同文件夹中,并记录每篇新闻的来源、标题、发布时间、下载时间、url地址等信息;
  3. 爬虫初始种子:新浪(news.sina.com.cn)、搜狐(news.sohu.com)、凤凰(news.ifeng.com)、网易(news.163.com)、百度(news.baidu.com)。

import requests
import bs4
import re
import datetime

headers = {
    'User-Agent': "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.90 Safari/537.36"
}

url = 'http://news.sohu.com/'
response = requests.get(url, headers=headers)
print(response.status_code)
response.encoding = 'utf-8'
text = response.text
soup = bs4.BeautifulSoup(text, 'html.parser')
p1 = soup.findAll('div', { 'id': 'block4'})#找到新闻标题的所在标签名称
i = 0
k = 0
# print(p1)

for each in p1:
    href = each.select('a')#a标签下的href
    #detail_url = href.get('href')
print(href)
href = str(href)
pattern = re.compile(r'href="(.*?)" ')
l = pattern.findall(href)
prefix = 'http://news.sohu.com'
ls = [prefix + url for url in l]
print(ls)
title = [[] for _ in range(50)]
data = [[] for _ in range(50)]
source = [[] for _ in range(50)]
while i < ls.__len__():
    print(ls[i])
    response = requests.get(ls[i], headers=headers)
    response.encoding = 'utf-8'
    text = response.text
    soup = bs4.BeautifulSoup(text, 'html.parser')
    title[i] = soup.find('h1').text
    title[i]= ''.join(filter(lambda x: '\u4e00' <= x <= '\u9fa5', title[i].strip()))
    print(title[i])
    data[i] = soup.find('span', class_='time').text
    print(data)
    source[i] = soup.find('span', { 'data-role': 'original-link'}).text.strip()
    s1 = soup.findAll('article', { 'class': 'article'})
    for each in s1:
        hr = each.select('p')
    hr = str(hr)
    findjs = re.compile(r'<p.*?>(.*?)</.*?>')
    js = findjs.findall(hr)
    print(js)
    file3 = open(r'%s.txt'%title[i],

  • 9
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值