Code Monkey home page Code Monkey logo

bilibili_show_selenium_deprecate's Introduction

Hobr

A liberal arts undergraduate who is fond of Computer Science.

Full stack. Now focus on RISC-V, OS kernel and AI.

bilibili_show_selenium_deprecate's People

Contributors

araea avatar dependabot[bot] avatar hobr avatar jamesgeziqian avatar mdjso avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

bilibili_show_selenium_deprecate's Issues

找不到相应的CSS元素

selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"css selector","selector":".confirm-paybtn.active"}
(Session info: MicrosoftEdge=112.0.1722.58)

ticket这个获取的element不一定是5月2号的票

当有且仅有5月3号的选框可用时
ticket = WebDriver.find_element(By.XPATH, "//*[@id='app']/div[2]/div[2]/div[2]/div[4]/ul[1]/li[2]/div[1]")
由于b站机制,会把可用的放第一个div里,会找到5月3号的票
需要加个判断
if '05-03' not in ticket.text:
来避免这个问题

同理只买5月3号也需要最好加下约束。

question

请问一下运行之后的无法购买是没抢到还是放出来的票不是对应的啊

CPP.PY报错

File "C:\Users\k'k\AppData\Local\Programs\Python\Python39\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 245, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.InvalidCookieDomainException: Message: invalid cookie domain: Cookie 'domain' mismatch
(Session info: chrome=103.0.5060.53)
Stacktrace:
Backtrace:
Ordinal0 [0x00C06463+2188387]
Ordinal0 [0x00B9E461+1762401]
Ordinal0 [0x00AB3D78+802168]
Ordinal0 [0x00B1B5F1+1226225]
Ordinal0 [0x00AFC7DC+1099740]
Ordinal0 [0x00B0CC22+1166370]
Ordinal0 [0x00AFC5F6+1099254]
Ordinal0 [0x00AD6BE0+945120]
Ordinal0 [0x00AD7AD6+948950]
GetHandleVerifier [0x00EA71F2+2712546]
GetHandleVerifier [0x00E9886D+2652765]
GetHandleVerifier [0x00C9002A+520730]
GetHandleVerifier [0x00C8EE06+516086]
Ordinal0 [0x00BA468B+1787531]
Ordinal0 [0x00BA8E88+1805960]
Ordinal0 [0x00BA8F75+1806197]
Ordinal0 [0x00BB1DF1+1842673]
BaseThreadInitThunk [0x76B40099+25]
RtlGetAppContainerNamedObjectPath [0x776A7B6E+286]
RtlGetAppContainerNamedObjectPath [0x776A7B3E+238]

使用chrome 103.0.5060.53 报错信息是这样 碍于我本人没有代码基础所以无法提供更多信息 抱歉

comicup29-ticket-buy Tutorials

原项目地址:

https://github.com/Hobr/comicup29-ticket-buy

具体步骤:

  1. 安装Python https://www.python.org/downloads/release/python-3113/ Windows installer (64-bit)
  2. 安装时选中“Add Python to PATH”紧接着点击“Customize installation”确保勾选所有可选项后 “Next”
  3. 打开终端(Cmd或者Powershell)输入指令 pip install selenium
  4. 更新pip(可选) python.exe -m pip install --upgrade pip
  5. 检查您使用的浏览器版本 (打开设置->关于来检查您的浏览器版本)
  6. 下载与您的浏览器版本匹配的Web驱动程序版本
Browers Drivers Link to download
Chrome ChromeDriver https://chromedriver.chromium.org/downloads
Internet Explorer Internet Explorer Driver Server https://www.selenium.dev/documentation/ie_driver_server/
Microsoft Edge Microsoft Edge Driver https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/
Firefox GeckoDriver https://github.com/mozilla/geckodriver/releases
Opera OperaChromiumDriver https://github.com/operasoftware/operachromiumdriver/releases
  1. 解压Web驱动程序得到“.exe”文件
  2. 将“.exe”文件放在安装好的Python目录的Scripts文件夹内
  3. 下载该项目ZIP文件 https://github.com/Hobr/comicup29-ticket-buy (Code->Download ZIP)
  4. 解压得到文件夹“comicup29-ticket-buy-main” 双击进入文件夹目录
  5. 在该文件夹目录下 地址栏输入cmd并按回车 在cmd中输入 pip install -r requirements.txt
  6. 该项目默认Web驱动程序为Chrome 如果你用的不是Chrome
  7. 请用记事本分别打开 “bilibili.py”和“cpp.py” 将Chrome改为你使用的浏览器 (以Microsoft Edge为例 请将“.py”文件中的所有“Chrome”改成“Edge”)
  8. 改完后 在刚刚打开的cmd窗口内输入指令python.exe .\bilibili.py或者python.exe .\cpp.py
  9. 根据要求输入yes 在网页登陆完成后 回到cmd输入任意字符 回车 成功获取Cookies
  10. 接下来用相同办法 重新打开脚本 即可开始抢票

补充:

  1. 可以通过设置“config.json”文件中的"send_email": <false/true>,来选择是否启用发送QQ邮件功能
  2. 默认是购买Day1普票 可以修改“.py”文件中的find_element(By.XPATH....div[x])x对应网页中的选项顺序

运行cpp.py报错

预期行为

正常打开页面并开始购票

当前行为

运行后出现如下报错

Traceback (most recent call last):
  File "/Users/hitori/Developer/comicup29-ticket-buy/cpp.py", line 34, in <module>
    WebDriver.add_cookie(
  File "/Users/hitori/opt/anaconda3/envs/comicup29-ticket-buy/lib/python3.11/site-packages/selenium/webdriver/remote/webdriver.py", line 727, in add_cookie
    self.execute(Command.ADD_COOKIE, {"cookie": cookie_dict})
  File "/Users/hitori/opt/anaconda3/envs/comicup29-ticket-buy/lib/python3.11/site-packages/selenium/webdriver/remote/webdriver.py", line 440, in execute
    self.error_handler.check_response(response)
  File "/Users/hitori/opt/anaconda3/envs/comicup29-ticket-buy/lib/python3.11/site-packages/selenium/webdriver/remote/errorhandler.py", line 245, in check_response
    raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.InvalidCookieDomainException: Message: invalid cookie domain: Cookie 'domain' mismatch
  (Session info: MicrosoftEdge=112.0.1722.58)
Stacktrace:
0   msedgedriver                        0x000000010d7ec9a8 msedgedriver + 5167528
1   msedgedriver                        0x000000010d7e40b3 msedgedriver + 5132467
2   msedgedriver                        0x000000010d375c26 msedgedriver + 486438
3   msedgedriver                        0x000000010d414ac4 msedgedriver + 1137348
4   msedgedriver                        0x000000010d3e4732 msedgedriver + 939826
5   msedgedriver                        0x000000010d40097d msedgedriver + 1055101
6   msedgedriver                        0x000000010d3e4503 msedgedriver + 939267
7   msedgedriver                        0x000000010d3adb37 msedgedriver + 715575
8   msedgedriver                        0x000000010d3af72e msedgedriver + 722734
9   msedgedriver                        0x000000010d7a656d msedgedriver + 4879725
10  msedgedriver                        0x000000010d7ab2c3 msedgedriver + 4899523
11  msedgedriver                        0x000000010d7abaea msedgedriver + 4901610
12  msedgedriver                        0x000000010d7b284f msedgedriver + 4929615
13  msedgedriver                        0x000000010d7ac28c msedgedriver + 4903564
14  msedgedriver                        0x000000010d7802e1 msedgedriver + 4723425
15  msedgedriver                        0x000000010d7ce618 msedgedriver + 5043736
16  msedgedriver                        0x000000010d7ce7c3 msedgedriver + 5044163
17  msedgedriver                        0x000000010d7de4d8 msedgedriver + 5108952
18  libsystem_pthread.dylib             0x00007ff8062c61d3 _pthread_start + 125
19  libsystem_pthread.dylib             0x00007ff8062c1bd3 thread_start + 15

重现步骤

  1. 配置Edge的WebDriver,安装到~/opt/anaconda3/bin目录下
  2. 创建并激活新的虚拟环境comicup29-ticket-buy
  3. 安装依赖:pip install -r requirements.txt
  4. 修改Web驱动程序,将所有出现Chrome()的部分改为Edge()
  5. 运行cpp.py
  6. 输入yes,并在打开的窗口登陆账号并自动保存cookie
  7. 再次执行cpp.py,出现如上报错

详细说明

  1. 只有cpp的不能运行,b站的在自动配置cookie之后是能够正常运行的
  2. Cookie确实是写进config.json去的

其他信息

  1. 系统版本:macOS 13.3.1 22E261 x86_64
  2. python版本:3.11.3
  3. Edge版本:版本 112.0.1722.58 (正式版本) (x86_64)

B站会员购票务使用了新版验证码,老方法失效了

今天抢方舟fes的时候发现老的过验证码方式失效了,叔叔现在换了验证码模块,fengx1a0 这个大佬的工具基本失效了,只能自己手动过验证码之后,才能继续15分钟的抢票。在他那提了issue,他还没有回复。请问您能解决这个问题吗

cookie无法解析

在浏览器获取到的cookie和python字典的值无法对应,请问是有什么转换规则吗?
没有直接看到“name”,“path” 的值。

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.