import requests
from requests.exceptions import RequestException #添加异常
import re
import time
import pymysql
def get_one_url(url):
try:
response = requests.get(url)
if response.status_code == 200: # 判断状态码 如果是200则请求成功
return response.text # 返回文档信息
return None
except RequestException: # 捕捉异常
return None
def put_in_key():
a=input("输入关键词:")
url="https://s.taobao.com/search?q="+a
return url
def colect_all_news():
url=put_in_key()
html=get_one_url(url)
reuserid = re.compile('"nid.*?(\d+).*?"raw_title":"(.*?)","pic_url".*?view_price":"(.*?)".*?item_loc":"(.*?)".*?view_sales":"(.*?)","comment_count.*?"user_id.*?(\d+)', re.S)
items = re.findall(reuserid, html)
print(items)
write_to_mysql(items)
def write_to_mysql(items):
conn = pymysql.connect(host='localhost', user='root', password='jiangqingtai', port=3306, db='sakila',charset='utf8')
cursor = conn.cursor()
for item in items:
sqlp = "insert into TBallnew (userid,tital,price,loca,people,itemid) values('%s','%s','%s','%s','%s','%s');" % (item)
print(sqlp)
try:
cursor.execute(sqlp)
# 提交
conn.commit()
except Exception as e:
# 错误回滚
conn.rollback()
conn.close()
if __name__=="__main__":
colect_all_news()