加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

对分享列表阅读数进行提取

发布时间:2020-12-17 17:13:26 所属栏目:Python 来源:网络整理
导读:今天PHP站长网 52php.cn把收集自互联网的代码分享给大家,仅供参考。 #!/usr/bin/env python# -*- coding: utf-8 -*-# @Date : 2015-06-01 10:30:06# @Author : HG ([email?protected])# @Version : 1.0import urllib2imp

以下代码由PHP站长网 52php.cn收集自互联网

现在PHP站长网小编把它分享给大家,仅供参考

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Date    : 2015-06-01 10:30:06
# @Author  : HG ([email?protected])
# @Version : 1.0
import urllib2
import re
import os

def getHtml(url):	#获取html源码
    page = urllib2.urlopen(url)
    html = page.read()
    return html

def urlPages(page):		#翻页
	url = 'http://www.oschina.net/code/list/7/python?p=' + str(page)
	heard={'User-Agent':'Mozilla/4.0 (compatible; MSIE 5.5; Windows NT)'}
	request=urllib2.Request(url,headers=heard)
	return request

def findList(html):		#正则匹配列表
    myItems = re.findall('<li>.*?<h3 class="code_title">.*?<a href="(.*?)" target="_blank" title="(.*?)">.*?</a>.*?</h3>.*?<p class="u">.*?<span class='stat'>(.*?)回/(.*?)阅/(.*?)顶/(.*?)收藏</span>.*?</p>.*?</li>',html,re.S)
    return myItems

for page in range(1,30):	#抓取的页数
	html = getHtml(urlPages(page))
	items = findList(html)
	for item in items:
		readmax = int(item[3])
		if readmax > 800:	#阅读数
			s = item[0] + ' ' + item[1] + 'n'
			file_object = open('open.txt','a')
			file_object.write(s)
			file_object.close()
		else:
			pass

以上内容由PHP站长网【52php.cn】收集整理供大家参考研究

如果以上内容对您有帮助,欢迎收藏、点赞、推荐、分享。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读