• 大小: 116KB
    文件类型: .zip
    金币: 2
    下载: 1 次
    发布日期: 2021-06-07
  • 语言: Python
  • 标签: 情话爬取  

资源简介

python爬取情话源码,

资源截图

代码片段和文件信息

import os
#导入request库
import requests
#导入Beautiful Soup库
from bs4 import BeautifulSoup as BS

#定义获取数据的方法
def Get_data():
    #设置请求头headers
    headers = {
        ‘User-Agent‘: ‘Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML like Gecko) Chrome/68.0.3440.106 Safari/537.36‘
        ‘cookie‘: ‘acw_tc=6f3e47cc15498749418558688e3d6410ea97be9a552b180841c5079605; PHPSESSID=s2hjdg3slh32omchfsib4himk0; UM_distinctid=168dbbfe8c533e-0e42df11c1c0a7-9393265-100200-168dbbfe8c71088; CNZZDATA1256319371=345851669-1549873534-%7C1549873534; CNZZDATA1257119496=134880590-1549870452-%7C1549870452; Hm_lvt_a48e6ab107a4e68d47e6fdb5d83961e5=1549875015; Hm_lvt_3c8ecbfa472e76b0340d7a701a04197e=1549875021; CNZZDATA1254708131=653924416-1549874976-%7C1549874976; CNZZDATA1275922735=1673340420-1549874690-%7C1549874690; CNZZDATA1257131565=1820590917-1549873827-%7C1549873827; CNZZDATA1257125147=1301871275-1549871347-https%253A%252F%252Fwww.duanwenxue.com%252F%7C1549871347; Hm_lpvt_a48e6ab107a4e68d47e6fdb5d83961e5=1549875906; Hm_lpvt_3c8ecbfa472e76b0340d7a701a04197e=1549875913; ajax_award_timestamp=1549875887; ajax_award_timestamp__ckMd5=706904497e9c8dfd; ajax_award_key=94a17405d22ab8aacbabbbfdb9d4740c; ajax_award_key__ckMd5=3e97bde02ab1998d‘
        ‘referer‘: ‘https://www.duanwenxue.com/huayu/tianyanmiyu/list_69.html‘
        ‘upgrade-insecure-requests‘ : ‘1‘
    }
    #根据url中最后数字的不同循环获取情话并调用parse_text写入文件
    for i in range(170):
        #使用format可以将i作为占位符的{}里面的内容并填入
        url = ‘https://www.duanwenxue.com/huayu/tianyanmiyu/list_{}.html‘.format(i)
        #调用requests的get方法爬取内容
        response = requests.get(urlheaders=headers)
        #调用parse_text方法来解析网页内容
        parse_text(response.text)


def parse_text(text):
    articles = []
    if text:
        #使用lxml解析器,常用的解析html的解析器
        soup = BS(text‘lxml‘)
        #调用find方法来首先找到class为list-short-article的div元素再找到target属性为blank的a标签
        arttis = soup.find(‘div‘ class_=‘list-short-article‘).find_all(‘a‘ {‘target‘: “_blank“})
        #这里是通过列表推导式以及for循环获取到每个a标签里面的text内容并通过strip去除空格
        articles = [arttis[i].text.strip() for i in range(len(arttis)) ]
    #将解析后的网页内容存放在text文件中
    #a:表示打开一个文件用于追加。如果该文件已经存在,文件指针会放在文件末尾,也就是说文件内容会被写入到已有内容之后
    #如果该文件不存在,创建新文件进行写入
    with open(‘Love_words.txt‘‘a‘encoding=‘utf-8‘) as f:
        for i in articles:
            #每一条内容后面追加换行符
            f.write(i+‘\n‘)


if __name__ == ‘__main__‘:
    os.remove(‘Love_words.txt‘)
    Get_data()

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件      316294  2019-02-13 14:49  python爬取情话源码\Love_words.txt
     文件        3016  2019-02-15 10:47  python爬取情话源码\get_data.py
     目录           0  2019-02-15 10:35  python爬取情话源码\

评论

共有 条评论

相关资源