這里只是一個(gè)簡單的Python爬蟲demo,主要是做個(gè)筆記,以后自己用到的時(shí)候,方便查詢,如果有幸能幫助的小伙伴,那就更好了。
import time
from selenium import webdriver
import re
# 定義函數(shù),參數(shù)設(shè)置為公司company, 目的是URL地址的時(shí)候接入不同的公司名稱,爬取不同的公司信息
def eastmoney(company):
chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument('--headless')
browser = webdriver.Chrome(options=chrome_options)
url ='https://so.eastmoney.com/news/s?keyword=' + company
browser.get(url)
data = browser.page_source
browser.quit()
p_title = '<div class="news-item"><h3><a href=".*?">(.*?)</a>'
p_href = '<div class="news-item"><h3><a href="(.*?)">.*?</a>'
p_date = '<p class="news-desc">(.*?) - .*?</p>'
title = re.findall(p_title, data)
href = re.findall(p_href, data)
date = re.findall(p_date, data, re.S)
for iin range(len(title)):
title[i] = re.sub('<.*?>', '', title[i])
date[i] = date[i].split(' ')[0]
print(str(i +1) +"." + title[i] +'? ' + date[i])
print(href[i])
companys = ['華能信托', '阿里巴巴', '騰訊控股', '京東']
for iin companys:
try:
eastmoney(i)
print(i +'該公司數(shù)據(jù)爬取成功')
except:
print(i +'該公司的數(shù)據(jù)爬取失敗')