You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
58 lines
1.8 KiB
58 lines
1.8 KiB
from flask import Flask
|
|
from flask import url_for
|
|
from markupsafe import escape
|
|
from flask import Flask, render_template,request
|
|
from pypinyin import pinyin,Style
|
|
import crawler
|
|
import pymysql
|
|
|
|
app = Flask(__name__)
|
|
@app.route('/')
|
|
def index():
|
|
return render_template('index.html')
|
|
|
|
@app.route('/test')
|
|
def test():
|
|
print('hello')
|
|
|
|
|
|
@app.route('/result')
|
|
def send():
|
|
return render_template('send.html')
|
|
|
|
|
|
@app.route('/result',methods=['POST'])
|
|
def result():
|
|
if request.method == 'POST':
|
|
city = request.form['city']
|
|
job = request.form['job']
|
|
if city and job:
|
|
pinyin_list = pinyin(city, style=Style.NORMAL)
|
|
city = ''.join([p[0] for p in pinyin_list])
|
|
pinyin_list = pinyin(job, style=Style.NORMAL)
|
|
job = ''.join([p[0] for p in pinyin_list])
|
|
table_name=city+'_'+job
|
|
else:
|
|
return "城市信息不能为空!"
|
|
try:
|
|
conn = pymysql.connect(host='127.0.0.1', port=3306, user='root', passwd='root', charset="utf8", db="bossdb")
|
|
cursor = conn.cursor()
|
|
sql = 'SELECT job_name, job_area, salary, job_tag, job_ability, company_name, company_info, welfare, job_des, company_type, address, link FROM '+table_name
|
|
cursor.execute(sql)
|
|
rows = cursor.fetchall()
|
|
return render_template('result.html', rows=rows)
|
|
except:
|
|
return "你输入的信息有误,请重新输入"
|
|
|
|
@app.route('/crawl', methods=['GET', 'POST'])
|
|
def crawl():
|
|
result='a'
|
|
if request.method == 'POST':
|
|
result=0
|
|
city = request.form['city']
|
|
job = request.form['job']
|
|
pages = int(request.form['pages'])
|
|
result=crawler.crawl(city, job, pages)
|
|
return render_template('crawl.html', result=result)
|
|
# return render_template('crawl.html',result=result)
|
|
return render_template('crawl.html',result=result) |