python selenium登录企名片,筛选各种条件,爬虫爬取融资信息,保存到csv文件

要点:1.利用datatime构建 日期,设定格式

         2.利用selenium 登录账号,input等待需要输入的验证码

         3.可以利用scrapy的Selector,替代beautifysoup 得到想要的标签

         4.selenium的操作,选定筛选条件、模拟键盘的enter

         5.使用try语句,错误时用logging提示错误,没问题就继续else里面的语句

         6.保存csv文件的具体写法!!


#步骤:
'''

1.登录,进入 ishijian页面,返回源代码




2.从源代码中,得到35个行业领域的list


3.设定 天使论
    循环35个行业
        设定  行业跟 天使轮
        循环365天

            设定 时间, 返回筛选后的页面


4.            对页面处理,保存



下面是具体代码:

import time,os,csv,logging
from selenium import  webdriver
from selenium.myfox import myfox
from scrapy import Selector
from selenium.webdriver.common.keys import Keys


class qimingpian(object):
    def __init__(self):
        self.phone_number = '1888888888'                            #登录手机
        self.login_url = 'http://auth.qimingpian.com/finos.html'    #登录网址
        self.url='http://vip.qimingpian.com/#/finos/investment/ishijian'#操作网址
        self.driver = myfox().work()                                #启动浏览器
        self.times=self.alltime()                                   #一年日期组成的list
        self.csv_file = os.getcwd() + '\\' + 'data.csv'             #csv文件路径

    def alltime(self):
        '''得到以今天为止近一年的日期组成的list'''
        import datetime
        dateend = datetime.date.today()
        datestart = dateend - datetime.timedelta(days=365)
        alltime = []
        while datestart < dateend:
            alltime.append(datestart.strftime('%Y.%m.%d'))
            datestart += datetime.timedelta(days=1)
        return alltime
    ##['2017.06.10', '2017.06.11', '2017.06.12', '2017.06.13',.....]

    def qimingpian_login(self, url):
        '''登录网页,然后输入账户,点击短信登录'''
        self.driver.maximize_window()
        self.driver.get(url)
        self.driver.implicitly_wait(3)
        self.driver.find_element_by_xpath('//div[@class="fl tab-phone hand"]').click()
        user = self.driver.find_element_by_xpath('//*[@class="form-con dib phone-input"]')
        user.send_keys(self.phone_number)
        self.driver.find_element_by_xpath('//*[@id="code-btn"]').click()
        time.sleep(2)
        code = input('请输入短信验证那个码')
        pwd = self.driver.find_element_by_xpath('//*[@class="form-con code-input fl"]')
        pwd.send_keys(code)
        time.sleep(0.5)
        self.driver.find_element_by_xpath('//*[@id="phone-login"]').click()
        time.sleep(20)
        #return self.driver


    def login(self):
        '''这是最开始需要登录的步骤,返回的还是 ishijian 的页面的源代码'''
        print(
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
好的,您可以按照以下步骤使用selenium爬取考研信息保存csv中: 1. 安装selenium库并下载相应浏览器的驱动器。例如,如果您使用的是Chrome浏览器,则需要下载chrome driver并添加到环境变量中。 2. 打开您要爬取的考研信息的网站,并使用selenium库打开浏览器。 3. 在浏览器中模拟用户操作,例如输入搜索关键词,点击搜索按钮等。 4. 使用selenium库获取数据,例如爬取网页源代码或者特定元素的文本。 5. 处理数据,例如提取所需信息保存到本地文件数据库中。这里我们选择将数据保存csv中。 下面是一个示例代码,用于在“研招网”上搜索“计算机”相关考研信息并将相关信息保存csv中: ```python import csv from selenium import webdriver # 打开Chrome浏览器 driver = webdriver.Chrome() # 打开研招网并搜索"计算机"相关考研信息 driver.get("https://yz.chsi.com.cn/zsml/queryAction.do") # 输入搜索关键词并点击搜索按钮 search_box = driver.find_element_by_name("mldm") search_box.send_keys("0852") search_button = driver.find_element_by_class_name("searchbtn") search_button.click() # 爬取相关内容并保存csv中 result_box = driver.find_element_by_id("resultTable") result_items = result_box.find_elements_by_tag_name("tr") with open('exam_info.csv', 'w', encoding='utf-8', newline='') as f: writer = csv.writer(f) for item in result_items: row = item.text.split() writer.writerow(row) # 关闭浏览器 driver.quit() ``` 注意:在使用selenium时请遵守网站的爬取规则,不要过度频繁地访问同一网站,以免被封禁IP。另外,注意对csv文件的编码和换行符的处理。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值