selenium方式爬取
优点:无需观察网站去查找数据来源
缺点:速度较requests方法更慢
网站观察
网址:东方财富科创板数据
===========================================================
===========================================================
网站分析
可以发现,由于在网页中存在多个公司,且网站代码中对每个标签的区分度并不高,所以直接在该网页中爬取比较复杂,所以这里选择先爬取每个公司的详情介绍的链接(href属性中每个公司都有一个对应的code编号),然后在每个公司的详情链接网站中爬取想要的信息。
===========================================================
公司详情页面
公司详情链接的页面如下:
===========================================================
可以发现网站也是动态加载的,那么可以采取selenium或者requests的方式爬取数据,其中selenium方式不需要去查找动态加载部分,直接爬取就行,但是由于每次需要访问不同页面,速度就要更慢,这里介绍selenium方法爬取,下一篇文章:爬虫笔记——东方财富科创板数据爬取(requests方法)介绍requests方法。
具体代码
代码如下,注意在run函数中,需要根据爬取的总共条数定义一下函数的参数,这里由于每页为50个公司,总共只有149条数据,故参数为(50,149):
# 东方财富科创板数据爬取-selenium
from selenium import webdriver
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By
from lxml import etree
import re
import time
import pandas as pd
class eastmoneyspider():
def __init__(self):
self