Вместо того, чтобы использовать login.send_keys(Keys.ENTER)
, вы должны использовать метод селена click()
, который будет работать для вас.
Сначала вы можете проверить, активен ли элемент, а затем нажать на него. Нравится:
WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//a[@track-element='header-login']"))).click()
Следующие возвраты дисковый порядковый номер. Должен работать с несколькими дисками, Вы просто получите несколько результатов. Просто выполните его с shell_exec.
wmic DISKDRIVE GET SerialNumber
wmic.exe расположен в Ваших окнах system32 папка. И wmic действительно существует на WinXP, я использовал его там сам.
Мой результат на Vista:
C:\Windows\System32>wmic DISKDRIVE GET SerialNumber
SerialNumber
20202020202054534241354c4*snip*
Я не знаю, предоставляют ли все жесткие диски порядковый номер ОС.
Кажется, что команда wmic только доступна на профессиональных версиях Windows XP, Windows Vista и Windows 7.
Сам PHP не имеет никакого способа получить доступ к аппаратным средствам как этот.
Вы будете иметь к также
system()
или exec()
Если Вы находитесь на Linux и имеете необходимые полномочия и конфигурацию, можно использовать $r = system("hdparm -I /dev/hda");
(замените hda своим HD) получить порядковый номер данного жесткого диска.
Я не могу сказать Вам ответ, но я предполагаю, что необходимо будет посмотреть в направлении расширений (возможно, даже пишущий один сами). Я сомневаюсь, что это - что-то, что ядро PHP имеет.
Править: Я забыл о грубой силе "должностного лица" :-/
Вы хотите жесткий диск от сервера или клиента? PHP работает на сервере, настолько добирающемся, это прямо от клиента doens't кажется возможным мне.
Руководство предполагает, что можно выполнить команды на Вас сервер: http://nl2.php.net/manual/en/ref.exec.php
К сожалению, я не делаю достаточного количества Unix для получения Вас сериалы HDD.
hdparm -i /dev/sdX
это находится на Linux, не уверенном в окнах все же. Вы могли выполнить это через "систему ()"
Мог бы быть путь вперед.
Кроме того, когда я выполнил "dir" на командной строке, это показывает:
C:\Documents and Settings\Administrator>dir
Volume in drive C has no label.
Volume Serial Number is BC16-5D5F
Это то, что Вы ищете?