
Security News
Attackers Are Hunting High-Impact Node.js Maintainers in a Coordinated Social Engineering Campaign
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.
com.panforge:robots
Advanced tools
Java library to read, parse and query robots.txt file.
Building the source code:
Using in your own project:
<dependencies>
...
<dependency>
<groupId>com.panforge</groupId>
<artifactId>robots</artifactId>
<version>1.4.6</version>
</dependency>
...
</dependencies>
import java.io.InputStream;
import com.panforge.robotstxt.RobotsTxt;
...
try (InputStream robotsTxtStream = <obtain input stream with robots.txt content>;) {
RobotsTxt robotsTxt = RobotsTxt.read(robotsTxtStream);
}
for example:
try (InputStream robotsTxtStream = new URL("https://github.com/robots.txt").openStream()) {
RobotsTxt robotsTxt = RobotsTxt.read(robotsTxtStream);
}
Please, note that the code snippet above is just an example meant how to feed parser with the stream of data. It is highly recommended to use a roboust a HTTP client implementation (like Apache Commons HTTP Client) for better handling various aspects of HTTP protocol communication instead of rudimentary Java URL() class.
It is recomended to use companion module: RobotsTxt-HTTP.
boolean hasAccess = robotsTxt.query(<User-agent name>,<HTTP path to the resource>);
for example:
boolean hasAccess = robotsTxt.query(null,"/humans.txt");
Grant grant = robotsTxt.ask(null,"/humans.txt");
if (grant == null || grant.hasAccess()) {
// do something
}
if (grant != null && grant.getCrawlDelay()!=null) {
// wait till next time
}
Copyright 2016 Piotr Andzel
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
A copy of the license is available in the repository's LICENSE file.
FAQs
Java package used to read, parse and query robots.txt
We found that com.panforge:robots demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 0 open source maintainers collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.

Security News
Axios compromise traced to social engineering, showing how attacks on maintainers can bypass controls and expose the broader software supply chain.

Security News
Node.js has paused its bug bounty program after funding ended, removing payouts for vulnerability reports but keeping its security process unchanged.