天涯帖子备份

from bs4 import BeautifulSoup
import urllib.request as request
import os
import time
import threading

url_s = ‘http://bbs.tianya.cn/m/post-develop-‘
url_e = ‘-1.shtml‘

headers=(‘User-Agent‘,‘Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.64 Safari/537.11‘)

def del_extract(dd,name=None):
    if len(dd)>0:
        for ds in dd:
            ds.extract()

def cut_str(s):
    if len(s)>0:
        try:
            href = s[0][‘href‘]
            if len(href)>0:
                s[0][‘href‘]=href[3:]
        except:
            pass

def get_total_page(url_site):
    opener = request.build_opener()
    opener.addheaders=[headers]
    content = opener.open(url_site).read()
    soup = BeautifulSoup(content,"html.parser")
    d = soup.find_all(class_=‘post‘,id="j-post-content")[0]

    data=d.find_all(class_=‘u-btn last-btn‘)
    total = 0
    if len(data)>0:
        total = data[0][‘href‘]
        total = int(str(total).split(".")[0].split("-")[-1])
    else:
        total = 0
    return total

def dealwith_page( url_site):

    opener = request.build_opener()
    opener.addheaders=[headers]
    content = opener.open(url_site).read()

    soup = BeautifulSoup(content,"html.parser")

    del_extract(soup.find_all("script"))
    del_extract(soup.find_all(class_="ty-m-nav"))
    del_extract(soup.find_all(class_="meta f-cf"))
    del_extract(soup.find_all(class_="ft"))
    d = soup.find_all(class_=‘post‘,id="j-post-content")[0]

    del_extract(d.find_all(class_="u-like"))
    del_extract(d.find_all(class_="post-func-close"))
    del_extract(d.find_all(class_="u-like hot-list"))

    cut_str(d.find_all(class_=‘u-btn off first-btn‘))
    cut_str(d.find_all(class_=‘u-btn pre-btn‘))
    cut_str(d.find_all(class_=‘page-txt‘))
    cut_str(d.find_all(class_=‘u-btn last-btn‘))
    cut_str(d.find_all(class_=‘u-btn next-btn‘))

    name = str(url_site).split(‘/‘)[-1]
    content = soup.prettify()
    if not os.path.exists("m/"):
        os.makedirs("m")
    with open(r"m/"+name,‘w‘,encoding="utf-8") as fw:
        fw.write(content)

def main_fun():
    print("please input the id of tianyaer (eg.2165689):")
    url_t = input("> ")
    url_page = url_s + url_t + url_e
    total = get_total_page(url_page)
    for n in range(total):
        url_page = url_s+str(url_t)+str("-")+str(n+1)+".shtml"
        print(url_page)
        while(threading.active_count()>10):
            time.sleep(1)

        t1=threading.Thread(target=dealwith_page,args=(url_page,))
        t1.setDaemon(True)
        t1.start() 

main_fun()   
时间: 2024-11-07 21:09:51

天涯帖子备份的相关文章

多线程队列下载天涯帖子

版本一: #coding:utf-8 import Queue import threading import time import urllib2 import re exitFlag = 0 class myThread (threading.Thread): def __init__(self, threadID, name, q, txt_dict): threading.Thread.__init__(self) self.threadID = threadID self.name

python实现网络爬虫下载天涯论坛帖子

最近发现天涯论坛是一个挺有意思的网站,有各种乱七八糟的帖子足以填补无聊时候的空虚感,但是相当不爽的一件事就是天涯的分页模式下想连贯的把楼主的内容看完实在是太心酸了,一个999页的帖子,百分之九十都是无聊网友的灌水,有时候连续翻几十页才能找到楼主的一条内容.所以无聊之下,就打算写一个简单的爬虫,能一次性把某一个帖子下楼主的所有内容一次性的下载下来.好吧,说了这么多废话,现在开始讲点正事. 网页的地址形式:http://bbs.tianya.cn/post-no05-355576-1.shtml,其

使用 CCC(Carbon Copy Cloner)备份、还原OS X 10.10 Yosemite(优胜美地)系统

帖子简述 目的(原因):以前安装的60GSSD已经满了,需要增加容量.但不想重装系统和软件,于是就有了Clone的想法.不得不说,OS X + CCC克隆,能做到100%的完美移植[自家移植到自家].简单,易操作.但过程中可能会出现一些问题,这些问题对小白来说可能是致命的.下面先讲一下正常的操作,后面再贴可能错误及排除[本人亲测]. 给谁看? 想备份OS X系统的人 想升级SSD的人 MAC控 自己 使用软件 磁盘工具,Carbon Copy Clone,TRIM ENABLER 你需要的技能

ldap的详细介绍,搭建,配置管理,备份,案例

Ldap  服务应用指南 兼容(5.X&6.X) 1.1  Ldap 目录服务介绍 1.1.1 什么是目录服务(active directory)?? 目录是一类为了浏览和搜索数据为设计的特殊的数据库,目录服务是按照树状存储信息的 目录进行更新的操作,可以说是要么全部,要么都不得原子性操作 目录不支持大多数事物型数据库所支持的高吞吐量和复杂的更新操作,适应于大量的查询和搜索操作,为了保证数据的可靠性和可用性,他也有主从服务器同步数据信息能力. ldap 也可以一主多从. ldap 可以说是活动目

6分钟彻底掌握存储和备份区别

摘要:如果不是专业的技术专家,很难搞清楚存储和备份这两者之间区别,特别是云的出现,这两个概念往往容易混在一起,本文将从专业角度详细对比存储和备份两者之间的区别和发展趋势. 一直以来,存储和备份是两个相近的概念,但是又有很大区别的.如果不是专业的技术专家,是比较难搞清楚这两者之间区别,特别是云的出现,这两个概念往往容易混在一起看.本文从几个方面快速对比下存储和备份这两个概念的区别和发展,以及演变趋势. 1. 备份是不能独立数据容器存在,永远构建于存储之上 存储是数据保存容器的统称,比如软盘,光盘,

浅析 天涯论坛 回复验证策略

对于现在 POST 技术满天飞的时代,防机器人确实是很头疼的一件事情,类似流量精灵这样的东西,他可以做到 100% 的真实信息,大批量的访问.当然今天不谈这些,只是分析下 天涯论坛 回复时的验证策略. 昨天谈到 packer 压缩,今天我们来看个实例吧.http://bbs.tianya.cn/m/reply.jsp?item=funinfo&id=4339425这个是天涯论坛手机端的回复帖子页面,里面有一个关于回复验证的js,就是用的 packer压缩.http://static.tianya

最好用的天涯论坛|社区顶贴机软件(天涯顶贴,发贴营销软件)

史上最好用的天涯顶贴机,为改革天涯而生! 天涯潜规则坑蒙拐骗,誓与天涯不两立,逼天涯改革! 天涯论坛营销推广软件 可发帖,可顶贴,可留言广告 售后承诺:天涯论坛由于要禁用各种软件,所以程序会有不断调整,我们也会随之升级应对   软件到底效果如何,自己先免费下载测试! 顶尖天涯顶贴机软件下载:软件包里有详细使用说明 链接:http://pan.baidu.com/ 赚钱最基本的要求:要有流量(也就是要有客户),没有流量不管什么赚钱方法都是扯蛋,实战100团队一直做靠谱的事,做真正能改变人命运的事

论坛贴吧营销-一天内10万点击量的帖子是如何“炼成”的?

告别顶贴机的垃圾广告宣传! 一提到贴吧论坛营销,很多人不禁一笑,不就是发个帖子然后用小号或者顶贴机去顶一下不就完了.确实是这样的,你们所说的确实属于论坛贴吧营销的一种,不过是最让人反感的一种,效果最差的一种.简单的说就是到各大论坛贴吧去发垃圾广告!那今天孤客就给大家分享另外一种论坛贴吧营销的方法,让你一天帖子一天内的点击量过万,效果好的甚至过10万!想学吗? 先问大家几个问题,请在心中默默的回答我:你做论坛营销是否发一个帖子瞬间会沉掉?你发的帖子是否没人点击?就算有人点击是否也没人回复帮你顶贴?

mysql 备份 还原

比如我有个discuz的论坛网站,数据库名为discuz mysql> show databases; +--------------------+ | Database           | +--------------------+ | information_schema | | discuz             | | mysql              | | test               | +--------------------+ 4 rows in set