0.工具
先说一下python版本,我用的是python3.6、requests和beautifulsoup,版本不同可能会出现问题,现在都已经2017年了,建议大家Python可以用最新的了
1.爬取结果
"D:\Program Files (x86)\Python\python.exe" E:/Python/Test.py
{'url': 'http://www.cnbeta.com/articles/tech/665159.htm', 'title': '网友新买气压椅突然爆炸:电脑机箱被炸裂'}
{'url': 'http://www.cnbeta.com/articles/soft/665157.htm', 'title': 'Android QQ轻聊版 3.6.1 正式版发布'}
{'url': 'http://www.cnbeta.com/articles/soft/665155.htm', 'title': '微信 2.6 for Windows正式版发布 可以搜索本地聊天记录'}
{'url': 'http://www.cnbeta.com/articles/tech/665153.htm', 'title': '中国独立制造的第六代深水钻井平台顺利完成海试'}
{'url': 'http://www.cnbeta.com/articles/tech/665151.htm', 'title': '杨利伟荣获联合国教科文组织“空间科学奖章”'}
{'url': 'http://www.cnbeta.com/articles/tech/665149.htm', 'title': '突破性治疗帮助瘫痪的男子再次移动双腿'}
{'url': 'http://www.cnbeta.com/articles/tech/665147.htm', 'title': '不需高端设备:普通灯泡也能实现触摸投影'}
{'url': 'http://www.cnbeta.com/articles/tech/665145.htm', 'title': '广州共享汽车征求意见:用户年满18周岁并有一年驾驶经历'}
{'url': 'http://hot.cnbeta.com/articles/funny/665143.htm', 'title': '河南大爷推翻多辆共享单车:这样更安全'}
{'url': 'http://hot.cnbeta.com/articles/movie/665141.htm', 'title': '《银翼杀手2049》内地票房遇冷 观众口碑两极分化'}
{'url': 'http://www.cnbeta.com/articles/tech/665139.htm', 'title': '高通官方预告骁龙845:12月毛伊岛见'}
{'url': 'http://www.cnbeta.com/articles/tech/665137.htm', 'title': '中国移动砸8400万复活飞信?先活下来再说'}
{'url': 'http://www.cnbeta.com/articles/tech/665135.htm', 'title': '北欧银行拟裁员六千 将用智能机器替代'}
{'url': 'http://hot.cnbeta.com/articles/game/665133.htm', 'title': '广电巨石砸向“吃鸡” 刚刚入局的小米该怎么办?'}
{'url': 'http://www.cnbeta.com/articles/tech/665131.htm', 'title': '科学家:银河系或有大量外星人可能藏身冰下黑暗海洋'}
{'url': 'http://www.cnbeta.com/articles/tech/665129.htm', 'title': '中国又一巨头获重大突破:能卷起来的手机走来'}
{'url': 'http://www.cnbeta.com/articles/tech/665127.htm', 'title': '苹果USB-C to Lightning快充数据线破解成功'}
{'url': 'http://www.cnbeta.com/articles/tech/665125.htm', 'title': '通用电气考虑出售旗下火车制造部门'}
{'url': 'http://www.cnbeta.com/articles/tech/665123.htm', 'title': '日制造业丑闻不断:神钢添新问题 斯巴鲁陷检验门'}
{'url': 'http://www.cnbeta.com/articles/tech/665121.htm', 'title': '刘强东透露儿时最大梦想是:能吃上肉'}
{'url': 'http://www.cnbeta.com/articles/tech/665119.htm', 'title': '三大运营商财报:联通4G用户数有望年底超过电信'}
{'url': 'http://www.cnbeta.com/articles/tech/665117.htm', 'title': '特斯拉股价接近熊市区域 未来可能下跌更多'}
{'url': 'http://www.cnbeta.com/articles/tech/665115.htm', 'title': '路透:全球自动驾驶行业初创企业多达240余家 存在泡沫'}
{'url': 'http://www.cnbeta.com/articles/tech/665113.htm', 'title': '应用适配不到位 首批苹果iPhone X用户可能要痛苦一阵'}
{'url': 'http://www.cnbeta.com/articles/tech/665111.htm', 'title': '[图]索尼概念汽车即将上路?SC-1正研发中'}
{'url': 'http://www.cnbeta.com/articles/tech/665109.htm', 'title': 'Moto青柚上手评测:定位千元的摩托罗拉你考虑吗?'}
{'url': 'http://www.cnbeta.com/articles/tech/665107.htm', 'title': '[视频]建个房屋等一年?交给这个公司10分钟就办好'}
{'url': 'http://hot.cnbeta.com/articles/game/665105.htm', 'title': '柯南秀节目现场玩《刺客信条:起源》 结果主角飞了起来'}
{'url': 'http://www.cnbeta.com/articles/tech/665103.htm', 'title': '刘强东携章泽天参加母校宿迁中学90年校庆 春风满面'}
{'url': 'http://www.cnbeta.com/articles/tech/665101.htm', 'title': '学校会计挪用公款1600万 用1300万打赏女主播'}
{'url': 'http://www.cnbeta.com/articles/science/665099.htm', 'title': '超灵敏的秤能够称出单个细胞的重量'}
{'url': 'http://www.cnbeta.com/articles/tech/665097.htm', 'title': '虚幻引擎4.18(Unreal Engine)正式发布 支持macOS High Sierra以及ARKit'}
{'url': 'http://www.cnbeta.com/articles/science/665095.htm', 'title': '研究发现碳水化合物的“味道”可能使我们变胖'}
{'url': 'http://www.cnbeta.com/articles/tech/665093.htm', 'title': 'CAT坚固型手机S41开始接受预订 零售价约合3482.6元'}
{'url': 'http://hot.cnbeta.com/articles/game/665091.htm', 'title': '《最终幻想15》PC配置需求曝光:老爷机也能玩'}
Process finished with exit code 0
2.代码
利益于python的简洁,十多行代码就把cnbeta给解析出来了,要是java那可就啰嗦了
# coding:utf-8
# 引入相关模块
import requests
from bs4 import BeautifulSoup
url = "http://www.cnbeta.com/"
data = requests.get(url).content
data = str(data,"utf-8")
soup = BeautifulSoup(data,'lxml')
list = soup.select("dl > dt > a")
for i in list:
url = i.get("href")
title = i.text
out ={
'url':url,
'title':title
}
print(out)
注意
用requests拿回来的html是乱码,这里转成utf-8,每个网站编码不同,这里不是必须的,
soup = BeautifulSoup(data,'lxml')这一行要装“lxml”库用来解析速度更快,用pip install lxml安装就好了,
list = soup.select("dl > dt > a")的"dl > dt > a"对应着dl、dt、a标签
最后
大家周末愉快,话说今天去图书馆没有带钱办不借书证,连门都不让进。
最后带上BeautifulSoup api 文档https://www.crummy.com/software/BeautifulSoup/bs4/doc/