Xpath - Как выбрать родителя на основе атрибута ребенка?

Вот часть 2 Вашей идеи, смоделированной в сценарии оболочки. Это берет 4, 5 и 6 слов буквы (примерно 50 000) из файла словаря Unix на Вашем компьютере, и свяжите те слова на первом символе.

#! /bin/bash

RANDOM=$
WORDSFILE=./simple-words
DICTFILE=/usr/share/dict/words
grep -ve '[^a-z]' ${DICTFILE} | grep -Ee '^.{4,6} 

Как большинство генераторов пароля, я обманываю путем вывода их в наборах двадцатых. Это часто защищается с точки зрения "безопасности" (кто-то смотрящий через Ваше плечо), но действительно его просто взлом для разрешения пользователю просто выбрать самый дружественный пароль.

я нашел 4 к 6 слова буквы из файла словаря, все еще содержащего неясные слова.

А лучший источник для слов был бы записанным документом. Я скопировал все слова на этой странице и вставил их в текстовый документ и затем выполнил следующий набор команд для получения фактическим английские слова.

perl -pe 's/[^a-z]+/\n/gi' ./624425.txt | tr A-Z a-z | sort -u > ./words
ispell -l ./words | grep -Fvf - ./words > ./simple-words

Тогда я использовал эти приблизительно 500 очень простых слов от этой страницы для генерации следующих паролей со сценарием оболочки - сценарий, между прочим, показывает слова, которые составляют пароль.

backgroundied (background died)
soundecrazy (sounding decided crazy)
aboupper (about upper)
commusers (community users)
reprogrammer (replacing programmer)
alliterafter (alliteration after)
actualetter (actual letter)
statisticrhythm (statistical crazy rhythm)
othereplacing (other replacing)
enjumbling (enjoying jumbling)
feedbacombination (feedback combination)
rinstead (right instead)
unbelievabut (unbelievably but)
createdogso (created dogs so)
apphours (applications phrase hours)
chainsoftwas (chains software was)
compupper (computer upper)
withomepage (without homepage)
welcomputer (welcome computer)
choosome (choose some)

Некоторыми результатами там являются победители.

прототип показывает, что может, вероятно, быть сделан, но аналитика, которой Вы требуете об аллитерации или информации о слоге, требует лучшего источника данных, чем просто слова. Вам была бы нужна информация о произношении. Кроме того, я показал, что Вы, вероятно, хотите, чтобы база данных хороших простых слов выбрала из, а не весь слова, лучше удовлетворила Ваше требование незабываемого пароля.

Генерация единого пароля в первый раз и каждый раз - что-то Вам нужно для сети - возьмет и лучший источник данных и больше изощренности. Используя лучший язык программирования, чем Bash с текстовыми файлами и использованием базы данных мог заставить это работать мгновенно. Используя систему баз данных Вы могли использовать алгоритм SOUNDEX или некоторых такой.

Отличная идея. Удача.

> ${WORDSFILE} N_WORDS=$(wc -l < ${WORDSFILE}) for i in $(seq 1 20); do password="" while [ ! "${#password}" -ge 8 ] || grep -qe"^${password}$" ${DICTFILE}; do while [ -z "${password}" ]; do password="$(sed -ne "$(( (150 * $RANDOM) % $N_WORDS + 1))p" ${WORDSFILE})" builtfrom="${password}" done word="$(sort -R ${WORDSFILE} | grep -m 1 -e "^..*${password:0:1}")" builtfrom="${word} ${builtfrom}" password="${word%${password:0:1}*}${password}" done echo "${password} (${builtfrom})" done

Как большинство генераторов пароля, я обманываю путем вывода их в наборах двадцатых. Это часто защищается с точки зрения "безопасности" (кто-то смотрящий через Ваше плечо), но действительно его просто взлом для разрешения пользователю просто выбрать самый дружественный пароль.

я нашел 4 к 6 слова буквы из файла словаря, все еще содержащего неясные слова.

А лучший источник для слов был бы записанным документом. Я скопировал все слова на этой странице и вставил их в текстовый документ и затем выполнил следующий набор команд для получения фактическим английские слова.

perl -pe 's/[^a-z]+/\n/gi' ./624425.txt | tr A-Z a-z | sort -u > ./words
ispell -l ./words | grep -Fvf - ./words > ./simple-words

Тогда я использовал эти приблизительно 500 очень простых слов от этой страницы для генерации следующих паролей со сценарием оболочки - сценарий, между прочим, показывает слова, которые составляют пароль.

backgroundied (background died)
soundecrazy (sounding decided crazy)
aboupper (about upper)
commusers (community users)
reprogrammer (replacing programmer)
alliterafter (alliteration after)
actualetter (actual letter)
statisticrhythm (statistical crazy rhythm)
othereplacing (other replacing)
enjumbling (enjoying jumbling)
feedbacombination (feedback combination)
rinstead (right instead)
unbelievabut (unbelievably but)
createdogso (created dogs so)
apphours (applications phrase hours)
chainsoftwas (chains software was)
compupper (computer upper)
withomepage (without homepage)
welcomputer (welcome computer)
choosome (choose some)

Некоторыми результатами там являются победители.

прототип показывает, что может, вероятно, быть сделан, но аналитика, которой Вы требуете об аллитерации или информации о слоге, требует лучшего источника данных, чем просто слова. Вам была бы нужна информация о произношении. Кроме того, я показал, что Вы, вероятно, хотите, чтобы база данных хороших простых слов выбрала из, а не весь слова, лучше удовлетворила Ваше требование незабываемого пароля.

Генерация единого пароля в первый раз и каждый раз - что-то Вам нужно для сети - возьмет и лучший источник данных и больше изощренности. Используя лучший язык программирования, чем Bash с текстовыми файлами и использованием базы данных мог заставить это работать мгновенно. Используя систему баз данных Вы могли использовать алгоритм SOUNDEX или некоторых такой.

Отличная идея. Удача.

12
задан Ayman Hourieh 1 November 2009 в 12:52
поделиться

2 ответа

Основной факт, который вам нужен, заключается в том, что предикаты могут быть вложенными: -

//*[@id='outer']/div/div/div/div[a[@href='www.blah.com']]
19
ответ дан 2 December 2019 в 07:03
поделиться
//*[@id='outer']/div/div/div/div/a[@href='www.blah.com']/../
3
ответ дан 2 December 2019 в 07:03
поделиться
Другие вопросы по тегам:

Похожие вопросы: