python学习之——爬取网页信息
爬取网页信息
说明:正则表达式有待学习,之后完善此功能
#encoding=utf-8 import urllib
import re
import os #获取网络数据到指定文件
def getHtml(url,fname):
#fname = 'C:\\Users\cuiliting\\Desktop\\weather_forecast.txt'
data =[]
page = urllib.urlopen(url)
html = page.read()
data.append(html)
fobj = open(fname,'w')
fobj.writelines('%s' %x for x in data)
fobj.close()
page.close() #从文件获取得到所需数据
def getWeather(fname,weath_keyword):
fobj = open(fname,'r')
for eachline in fobj:
if weath_keyword in eachline:
print eachline, fobj.close() if __name__ == '__main__':
#url_input = raw_input("please enter url:")
#fname_input = raw_input("please enter fname:")
#weath_keyword_input = 'raw_input("please enter keywords:")'
url_input = 'http://www.weather.com.cn/weather/101010100.shtml'
fname_input = 'C:\\Users\\Desktop\\weather_forecast.txt'
weath_keyword_input = '<h1>10日(明天)</h1>'
getHtml(url_input,fname_input)
getWeather(fname_input,weath_keyword_input)
python学习之——爬取网页信息的更多相关文章
- [python] 常用正则表达式爬取网页信息及分析HTML标签总结【转】
[python] 常用正则表达式爬取网页信息及分析HTML标签总结 转http://blog.csdn.net/Eastmount/article/details/51082253 标签: pytho ...
- Python爬取网页信息
Python爬取网页信息的步骤 以爬取英文名字网站(https://nameberry.com/)中每个名字的评论内容,包括英文名,用户名,评论的时间和评论的内容为例. 1.确认网址 在浏览器中输入初 ...
- 常用正则表达式爬取网页信息及HTML分析总结
Python爬取网页信息时,经常使用的正则表达式及方法. 1.获取<tr></tr>标签之间内容 2.获取<a href..></a>超链接之间内容 3 ...
- python requests库爬取网页小实例:爬取网页图片
爬取网页图片: #网络图片爬取 import requests import os root="C://Users//Lenovo//Desktop//" #以原文件名作为保存的文 ...
- python 爬虫(爬取网页的img并下载)
from urllib.request import urlopen # 引用第三方库 import requests #引用requests/用于访问网站(没安装需要安装) from pyquery ...
- [Python学习] 简单爬取CSDN下载资源信息
这是一篇Python爬取CSDN下载资源信息的样例,主要是通过urllib2获取CSDN某个人全部资源的资源URL.资源名称.下载次数.分数等信息.写这篇文章的原因是我想获取自己的资源全部的评论信息. ...
- python 嵌套爬取网页信息
当需要的信息要经过两个链接才能打开的时候,就需要用到嵌套爬取. 比如要爬取起点中文网排行榜的小说简介,找到榜单网址:https://www.qidian.com/all?orderId=&st ...
- python+selenium+PhantomJS爬取网页动态加载内容
一般我们使用python的第三方库requests及框架scrapy来爬取网上的资源,但是设计javascript渲染的页面却不能抓取,此时,我们使用web自动化测试化工具Selenium+无界面浏览 ...
- Python简单程序爬取天气信息,定时发邮件给朋友【高薪必学】
前段时间看到了这个博客.https://blog.csdn.net/weixin_45081575/article/details/102886718.他用了request模块,这不巧了么,正好我刚用 ...
随机推荐
- oracle返回多个参数
CREATE OR REPLACE PACKAGE BODY get_form_no_pub IS /*================================================ ...
- HackerRank "Square Subsequences" !!!
Firt thought: an variation to LCS problem - but this one has many tricky detail. I learnt the soluti ...
- Hadoop学习15--编程相关
1.新版本:mapreduce包 2.job设置: a.JobName便于调试 b.FileInputFormat.addInputPath 添加输入路径,可添加多个:可以是具体文件,还可以是文件夹. ...
- Linux-第一天
1.etc 配置目录 2.swap 3.挂载点 建立一个目录,作为一个设备的访问入口,光盘镜像文件.移动硬盘.U盘以及Windows网络共享和UNIX NFS网络共享等 mnt目录, 建立挂载点:mn ...
- 【总结】我所整理的各种CSS居中
在网上看了很多文章,自己也总结了一下,虽说是自己写的,但是还是要列出我参考过的那些文章的地址,感谢你们的分享! http://blog.gejiawen.com/2015/03/13/css-lay ...
- 认识zookeeper
之前稍微看了一下Hadoop相关的技术文档,有了解到Hbase用zookeeper做分布式应用程序协调服务. 现在做的项目里,也是用zookeeper做集群和负载均衡(从类名LoadBalance看来 ...
- php 二维数组(没啥技术含量)
<?php $cars = array( array('benchi',20,18), array('baoma',30,21), array('aodi',23,9) ); echo $car ...
- gerrit集成gitweb后,点击gitweb连接:not found(转载)
From:http://blog.sina.com.cn/s/blog_4fb490ff01018i0v.html 需要添加refs/meta/config的read access权限.
- php数组转换成json格式。
{ "touser":"OPENID", "template_id":"ngqIpbwh8bUfcSsECmogfXcV14J0t ...
- Java分布式Socket监控项目思考
内容说明 一项课程作业Java编写Socket长连接监控分布式终端,并将终端状态写入数据库供前端查询 基础:c++/Posix/APUE/Mysql&sqlite 核心内容:Socket/线程 ...