import requests
from bs4 import BeautifulSoup
import re


class Get_links(object):
def __init__(self):
self.url = 'http://www.jianfeiketang.com'
self.headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3724.8 Safari/537.36",
}

def parse(self):
response = requests.get(url=self.url, headers=self.headers)
html = response.content.decode()

links = []
soup = BeautifulSoup(html, "html.parser")
url_list = soup.find_all('a')
for link in url_list:
links.append(link.get('href'))
return links

def save(self, links):
for link in links:
with open('../result/jf.txt', 'a', encoding='utf-8') as f:
f.write(link + '\n')
print('保存成功...')

def guolv(self):
with open('../result/jf.txt', 'r', encoding='utf-8') as f:
lines = f.readlines()
for line in lines: # 循环处理每行数据
urls = re.findall(r"http[s]?://(?:[a-zA-Z]|[0-9]|[$-_@.&+]|[!*\(\),]|(?:%[0-9a-fA-F][0-9a-fA-F]))+",
line)
for url in urls:
with open('./jfresult.txt', 'a', encoding='utf-8') as f:
f.write(url + '\n')
print('清洗完毕。。。')


if __name__ == '__main__':
get_links = Get_links()
links = get_links.parse()
get_links.save(links)
get_links.guolv()
posted on 2019-08-28 19:03  Yihan_07  阅读(274)  评论(0编辑  收藏  举报