ਜਦੋਂ ਕਿ ਬਹੁਤ ਸਾਰੇ ਹੋਰ ਲੇਖ ਡੇਟਾ ਕੱractਣ ਦੇ ਤਰੀਕੇ ਨਾਲ ਸੰਬੰਧਿਤ ਹਨ ਇਸ ਲੇਖ ਵਿਚ ਦੱਸਿਆ ਗਿਆ ਹੈ ਕਿ ਕਿਵੇਂ ਕੱractedੇ ਗਏ ਡੇਟਾ ਨੂੰ ਸੁਧਾਰੀ ਜਾ ਸਕਦਾ ਹੈ ਇਸ ਲਈ ਸਿਰਫ ਲੋੜੀਂਦੀ ਜਾਣਕਾਰੀ ਬਾਕੀ ਹੈ. ਇਸ ਨੂੰ ਖਾਸ ਕਰਨ ਲਈ Criteria
ਵਿਧੀਆਂ ਇਸਤੇਮਾਲ ਕੀਤੀਆਂ ਜਾਂਦੀਆਂ ਹਨ ਜਦੋਂ ਕਿ ਹੇਠ ਲਿਖੀਆਂ ਸਾਰੀਆਂ ਉਦਾਹਰਣਾਂ ਵਿੱਚ ਇੱਕ HTML ਟੇਬਲ ਤੋਂ ਡਾਟਾ ਕੱ extਿਆ ਜਾਂਦਾ ਹੈ, ਇਸ ਡੇਟਾ ਨੂੰ ਵੱਖ ਵੱਖ ਵੱਖ ਸਰੋਤਾਂ ਤੋਂ ਕੱractedਿਆ ਜਾ ਸਕਦਾ ਹੈ ਜਿੰਨਾ ਚਿਰ ਡਾਟਾ ਸਮੱਗਰੀ ਦੇ ਹਰੇਕ ਸਰੋਤ ਡਿਵ, ਸਪੈਨ, ਚਿੱਤਰ ਆਦਿ ਇੱਕੋ ਲੰਬਾਈ ਦੇ ਹੁੰਦੇ ਹਨ.
ਹੇਠਾਂ ਇਸ ਟੇਬਲ ਵਿੱਚ ਟੇਬਲ ਡੇਟਾ ਨੂੰ ਸਕ੍ਰੈਪ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ, ਇਸ ਟੇਬਲ ਵਿੱਚ, ਚਾਰ ਕਾਲਮ ਸ਼ਾਮਲ ਹਨ ਦਾ ਸਿਰਲੇਖ, ਲੇਖਕ, ਕਿਤਾਬ ਦੀ ਉਮਰ ਅਤੇ ਸਥਿਤੀ ਨੂੰ.
ਦਾ ਸਿਰਲੇਖ | ਲੇਖਕ | ਕਿਤਾਬ ਦੀ ਉਮਰ | ਸਥਿਤੀ ਨੂੰ |
---|---|---|---|
ਗਾਰਡਨ ਕਿਵੇਂ ਕਰੀਏ | ਯੂਹੰਨਾ | 5 | ਪ੍ਰਕਾਸ਼ਿਤ |
ਕੈਮਰਾ ਕਿਵੇਂ ਵਰਤਣਾ ਹੈ | ਸਾਰਾਹ | 0 | ਅਧੂਰਾ |
ਕੈਮਰਾ ਕਿਵੇਂ ਵਰਤਣਾ ਹੈ | ਸਾਰਾਹ | 0 | ਅਧੂਰਾ |
ਖਗੋਲ ਵਿਗਿਆਨ ਨੇ ਅਸਾਨ ਬਣਾਇਆ | ਡੋਮਨਿਕ | 1 | ਸਮੀਖਿਆ ਅਧੀਨ |
ਕਿਵੇਂ ਲੋਹੇ ਨੂੰ | ਪੌਲੁਸ | 1 | ਸਮੀਖਿਆ ਅਧੀਨ |
ਕਿਵੇਂ ਖਿੱਚੀਏ | ਮਾਈਕ | 3 | ਪ੍ਰਕਾਸ਼ਿਤ |
ਪੀਸੀ ਦੀ ਵਰਤੋਂ ਕਿਵੇਂ ਕਰੀਏ | ਰਾਖੇਲ | 4 | ਪ੍ਰਕਾਸ਼ਿਤ |
var titles = Page.getTagValues({"position":1,"tag":{"equals":"td"},"parent":{"tag":{"equals":"tr"}}}); var authors = Page.getTagValues({"position":2,"tag":{"equals":"td"},"parent":{"tag":{"equals":"tr"}}}); var ages = Page.getTagValues({"position":3,"tag":{"equals":"td"},"parent":{"tag":{"equals":"tr"}}}); var statuses = Page.getTagValues({"position":4,"tag":{"equals":"td"},"parent":{"tag":{"equals":"tr"}}});
ਅਕਸਰ ਸਕ੍ਰੈਪਡ ਡੇਟਾ ਨੂੰ ਸੰਸ਼ੋਧਿਤ ਕਰਨ ਦੀ ਜ਼ਰੂਰਤ ਹੁੰਦੀ ਹੈ ਤਾਂ ਜੋ ਉਨ੍ਹਾਂ ਕੋਲ ਸਿਰਫ ਉਹ ਜਾਣਕਾਰੀ ਹੋਵੇ ਜੋ ਉਹ ਲੋੜੀਂਦੇ ਹਨ. ਇਹ ਉਹ ਥਾਂ ਹੈ ਜਿਥੇ Criteria
ਫੰਕਸ਼ਨ ਵਰਤੇ ਜਾਂਦੇ ਹਨ. ਉਦਾਹਰਣ ਦੇ ਲਈ ਜੇ ਸਿਰਫ ਪ੍ਰਕਾਸ਼ਤ ਕਿਤਾਬਾਂ ਦੀ ਜਰੂਰਤ ਹੈ ਤਾਂ ਤੁਹਾਨੂੰ ਉਪਰੋਕਤ ਸਥਿਤੀਆਂ ਦੇ ਕਾਲਮ ਨੂੰ ਪ੍ਰਕਾਸ਼ਤ ਕਰਨ ਤਕ ਸੀਮਤ ਕਰਨ ਦੀ ਜ਼ਰੂਰਤ ਹੋਏਗੀ ਅਤੇ ਫਿਰ ਹੇਠਾਂ ਦਿੱਤੇ ਅਨੁਸਾਰ ਦੂਸਰੇ ਕਾਲਮ ਡੇਟਾ ਤੇ ਉਹਨਾਂ ਬਦਲਾਵ ਨੂੰ ਲਾਗੂ ਕਰਨਾ ਪਏਗਾ.
Criteria.create(); statuses = Criteria.equals(statuses, "Published"); titles = Criteria.apply(titles); authors = Criteria.apply(authors); ages = Criteria.apply(ages);
ਵਰਤਣ ਵੇਲੇ Criteria
ਡੇਟਾ ਨੂੰ ਘਟਾਉਣ ਦੇ methodsੰਗ, ਸਾਰੇ ਬਦਲਾਅ ਇੱਕ ਸਮੇਂ ਇੱਕ ਹੀ ਕਾਲਮ ਤੇ ਲਾਗੂ ਹੋਣੇ ਚਾਹੀਦੇ ਹਨ, ਤੋਂ ਪਹਿਲਾਂ apply
methodੰਗ ਦੀ ਵਰਤੋਂ ਕਿਸੇ ਹੋਰ ਕਾਲਮਾਂ ਤੇ ਕੀਤੀ ਜਾਂਦੀ ਹੈ ਜਿਸ ਨਾਲ ਸੰਬੰਧਿਤ ਰਿਕਾਰਡ ਹਟਾ ਦਿੱਤੇ ਜਾਣ. ਇੱਕ ਵਾਰ ਪੂਰਾ ਕਰੋ Criteria.create()
ਕਿਸੇ ਹੋਰ ਕਾਲਮਾਂ ਲਈ ਮਾਪਦੰਡ ਤਹਿ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ methodੰਗ ਨੂੰ ਬੁਲਾਉਣਾ ਪੈਂਦਾ ਹੈ. ਇਹ ਇਸ ਕਾਰਨ ਕਰਕੇ ਹੈ ਕਿ ਇਸਨੂੰ ਬੁਲਾਉਣਾ ਸਭ ਤੋਂ ਵਧੀਆ ਅਭਿਆਸ ਹੈ Criteria.create()
ਕਿਸੇ ਵੀ ਹੋਰ ਮਾਪਦੰਡ ਦੇ ਤਰੀਕਿਆਂ ਤੋਂ ਪਹਿਲਾਂ.
ਉਦਾਹਰਣ ਵਿੱਚ ਸਥਿਤੀ ਨੂੰ ਕਾਲਮ ਸਿਰਫ ਸ਼ਾਮਲ ਕਰਨ ਤੱਕ ਸੀਮਤ ਕੀਤਾ ਗਿਆ ਹੈ ਪ੍ਰਕਾਸ਼ਿਤ, ਫਿਰ ਦੀ ਵਰਤੋਂ ਕਰਕੇ Criteria.apply
ਸਾਰੇ ਕਾਲਮਾਂ ਨੂੰ ਇਕਸਾਰ ਰੱਖਣ ਲਈ ਤਿੰਨ ਹੋਰ ਕਾਲਮਾਂ ਵਿਚਲੇ umnsੰਗ ਨੂੰ ਵੀ ਹਟਾ ਦਿੱਤਾ ਗਿਆ ਹੈ. ਯਾਦ ਰੱਖੋ ਕਿ ਲਾਗੂ ਕਰਨ ਦਾ ਤਰੀਕਾ ਕੇਵਲ ਤਾਂ ਹੀ ਲਾਭਦਾਇਕ ਹੈ ਜੇਕਰ ਵੱਖੋ ਵੱਖਰੇ ਕਾਲਮਾਂ ਵਿੱਚ ਇੱਕੋ ਜਿਹੀ ਗਿਣਤੀ ਦੇ ਰਿਕਾਰਡ ਹੋਣ.
ਕਈ ਤਰੀਕਿਆਂ ਨਾਲ ਡਾਟਾ ਨੂੰ ਸੀਮਤ ਕਰਨ ਲਈ ਕ੍ਰਿਟੀਰੀਆ ਨੂੰ ਵੀ ਜੋੜਿਆ ਜਾ ਸਕਦਾ ਹੈ. ਹੇਠਾਂ ਦਿੱਤੀ ਉਦਾਹਰਣ ਕਿਤਾਬ ਦੀ ਉਮਰ ਕਾਲਮ ਨੂੰ ਇਕ ਤੋਂ ਪੁਰਾਣੀ ਪਰ ਪੰਜ ਸਾਲ ਤੋਂ ਘੱਟ ਪੁਰਾਣੀਆਂ ਕਿਤਾਬਾਂ ਤੇ ਪ੍ਰਤੀਬੰਧਿਤ ਕਰਦੀ ਹੈ Criteria.lessThan()
ਅਤੇ Criteria.greaterThan()
ਵਿਧੀਆਂ
Criteria.create(); ages = Criteria.greaterThan(ages, 1); ages = Criteria.lessThan(ages, 5); titles = Criteria.apply(titles); authors = Criteria.apply(authors); statuses = Criteria.apply(statuses);
ਕਈ ਵਾਰ ਡੁਪਲਿਕੇਟ ਡਾਟਾ ਹੁੰਦਾ ਹੈ ਜਿਸ ਨੂੰ ਹਟਾਉਣ ਦੀ ਜ਼ਰੂਰਤ ਹੁੰਦੀ ਹੈ, ਇਸ ਜਾਣਕਾਰੀ ਨੂੰ ਹਟਾਉਣ ਲਈ ਤੁਸੀਂ ਇਸ ਦੀ ਵਰਤੋਂ ਕਰ ਸਕਦੇ ਹੋ Criteria.unique
ਵਿਧੀ
Criteria.create(); titles = Criteria.unique(titles); authors = Criteria.apply(authors); ages = Criteria.apply(ages); statuses = Criteria.apply(statuses);
ਹੁਣ ਸਿਰਲੇਖ ਟਕਰਾਅ ਦੇ ਅਧਾਰ ਤੇ ਕਿਸੇ ਵੀ ਡੁਪਲਿਕੇਟ ਕਤਾਰਾਂ ਨੂੰ ਹਟਾ ਦਿੱਤਾ ਜਾਵੇਗਾ. ਅਗਲਾ methodੰਗ ਹੈ Criteria.remove
.ੰਗ. ਇਹ ਕਾਲਮ ਤੋਂ ਆਈਟਮਾਂ ਨੂੰ ਹਟਾ ਦਿੰਦਾ ਹੈ ਜੇ ਉਹ ਕਾਲਮ ਮੁੱਲ ਐਰੇ ਪੈਰਾਮੀਟਰ ਵਿੱਚ ਪਾਏ ਜਾਂਦੇ ਹਨ.
var authorsToRemove = ["Mike","Rachel"]; Criteria.create(); authors = Criteria.remove(authors, authorsToRemove); titles = Criteria.apply(titles); ages = Criteria.apply(ages); statuses = Criteria.apply(statuses);
ਇੱਥੇ ਲੇਖਕਾਂ ਦੇ ਕਾਲਮ ਵਿਚਲੇ ਸਾਰੇ ਰਿਕਾਰਡ ਜੋ ਮਾਈਕ ਅਤੇ ਰਾਚੇਲ ਦੇ ਬਰਾਬਰ ਹਨ ਲਾਗੂ ਕਰਨ ਦੀ ਵਿਧੀ ਨੂੰ ਹਟਾ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ ਫਿਰ ਦੂਜੇ ਕਾਲਮਾਂ ਤੋਂ ਸੰਬੰਧਿਤ ਰਿਕਾਰਡਾਂ ਨੂੰ ਹਟਾ ਦਿੰਦਾ ਹੈ.