标签: web-crawler

无法找到robots.txt阻止的互联网页面

问题:在Uni找到数学讲座的答案和练习.赫尔辛基

实际问题

  1. 使用Disallowrobots.txt中的.com制作网站列表
  2. 在(1)处创建包含*.pdf文件的站点列表
  3. 在(2)中制作一个包含pdf文件中"analyysi"一词的网站列表

对实际问题的建议

  1. 问题3:制作一个从pdf文件中删除数据的编译器

问题

  1. 你如何搜索注册的.com-网站?
  2. 您如何通过Python的defaultdict和BeautifulSoap解决实际问题1和2?

python web-crawler data-mining

-1
推荐指数
1
解决办法
408
查看次数

在python中从HTML中提取文本

可能重复:
使用Python从HTML文件中提取文本

Python中从HTML页面中提取文本的最佳方式是什么,就像复制粘贴时浏览器一样?

html python text extract web-crawler

-1
推荐指数
1
解决办法
3018
查看次数

用php curl获取网站正确的来源

我编写了一个简单的PHP脚本来使用CURL获取网站的源代码:

function file_get_contents_curl($url)
{
$ch = curl_init();

curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt ($ch, CURLOPT_CAINFO, dirname(__FILE__)."/curl/cacert.pem");

$data = curl_exec($ch);
$url = curl_getinfo($ch, CURLINFO_EFFECTIVE_URL);
$httpcode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);

if($data === false)
    return false;
return array("content" => $data, "url" => $url, "httpcode" => $httpcode);
}

$data = file_get_contents_curl("https://www.facebook.com");

print_r($data);
Run Code Online (Sandbox Code Playgroud)

在这个例子中,我正在获取Facebook源代码,但它获取的页面与不支持的浏览器相关.事实上,重定向后的最终URL是:http://www.facebook.com/unsupportedbrowser

有什么问题?

php curl facebook web-crawler

-1
推荐指数
1
解决办法
3803
查看次数

用scrapy进行数据抓取

我想制作一个新的投注工具,但我需要一个赔率和结果的数据库,但在网络上找不到任何东西.我发现这个网站有很棒的存档:OddsPortal

我想做的就是从上面的页面中抓取结果和赔率.我发现一个名为Scrapy的工具可以做到,是真的吗?有人可以帮我提一些提示吗?

java database web-crawler scrapy

-1
推荐指数
1
解决办法
4275
查看次数

使用Task.Run的C#WebClient仅实现5%的网络使用率.为什么?

我正在试验/学习新的Task库,我使用WebClient和Task.Run编写了一个非常简单的html下载器.但是我的网络使用率永远不会超过5%.我想了解为什么以及如何改进我的代码以达到100%的网络使用/吞吐量(可能不可能,但它必须超过5%).

我也希望能够限制线程的数量,但它似乎并不像我想象的那么容易(即自定义任务调度程序).有没有办法只做这样的事情来设置最大线程数:something.SetMaxThread(2)?

internal static class Program
    {
        private static void Main()
        {
            for (var i = 0; i < 1000000; i++)
            {
                Go(i, Thread.CurrentThread.ManagedThreadId);
            }

            Console.Read();
        }

        private static readonly Action<int, int> Go = (counter, threadId) => Task.Run(() =>
        {
            var stopwatch = new Stopwatch();
            stopwatch.Start();

            var webClient = new WebClient();
            webClient.DownloadString(new Uri("http://stackoverflow.com"));

            stopwatch.Stop();

            Console.Write("{0} == {1} | ", threadId.ToString("D3"), Thread.CurrentThread.ManagedThreadId.ToString("D3"));
            Console.WriteLine("{0}: {1}ms ", counter.ToString("D3"), stopwatch.ElapsedMilliseconds.ToString("D4"));
        });
    }
Run Code Online (Sandbox Code Playgroud)

这是@spender的异步版本.但是我的理解是await将"记住"该时间点并将下载切换到OS级别并跳过(2 console.write)并立即返回main并继续在for循环中调度剩余的Go方法.我理解正确吗?因此UI上没有阻止.

private static async void Go(int counter, int threadId)
{
    using …
Run Code Online (Sandbox Code Playgroud)

c# concurrency web-crawler task-parallel-library

-1
推荐指数
1
解决办法
1051
查看次数

如何抓取新闻网站(仅限内容)?

我想抓住印度新闻网站及其档案(例如thehindu.com,indianexpress.com和timesofindia.com).

我听说Java中的样板库用于提取内容.但是python中是否有任何库可以执行此操作以及如何执行此操作?

如果这是一个重复的问题,请帮我指出.

python hierarchical-clustering web-crawler web

-1
推荐指数
1
解决办法
2735
查看次数

抓取具有多个重定向的页面的最佳方式

我想抓取NCBI网站,并通过以下链接发送蛋白质局部比对的请求:http: //blast.ncbi.nlm.nih.gov/Blast.cgi?PROGRAM = blastp&BLAST_PROGRAMS = blastp&PAGE_TYPE = BlastSearch

我想知道我是否能够向此地址提交帖子请求,并使用PHP获取新页面中的结果.还有一个问题,在显示最终结果之前,页面经历了多次重定向 - 您可以使用以下输入进入文本区域来测试这种情况:

MHSSIVLATVLFVAIASASKTRELCMKSLEHAKVGTSKEAKQDGIDLYKHMFEHYPAMKKYFKHRENYTP
ADVQKDPFFIKQGQNILLACHVLCATYDDRETFDAYVGELMARHERDHVKVPNDVWNHFWEHFIEFLGSK
TTLDEPTKHAWQEIGKEFSHEISHHGRHSVRDHCMNSLEYIAIGDKEHQKQNGIDLYKHMFEHYPHMRKA
FKGRENFTKEDVQKDAFFVNKDTRFCWPFVCCDSSYDDEPTFDYFVDALMDRHIKDDIHLPQEQWHEFWK
LFAEYLNEKSHQHLTEAEKHAWSTIGEDFAHEADKHAKAEKDHHEGEHKEEHH
Run Code Online (Sandbox Code Playgroud)

这是我的尝试:

$link = 'http://blast.ncbi.nlm.nih.gov/Blast.cgi?
PROGRAM=blastp&BLAST_PROGRAMS=blastp&PAGE_TYPE=BlastSearch';

$request = array(
    'http' => array(
        'method' => 'POST',
        'content' => http_build_query(array(
            'QUERY' => $aaText
            )
        ),
    )
);

$context = stream_context_create($request);
$html = file_get_html($link, false, $context);
echo $html;
Run Code Online (Sandbox Code Playgroud)

这段代码为我提供了初始页面,好像没有完成POST一样.谢谢


UPDATE

我尝试过以下建议之一 - 古特.

这是我的新代码:

require_once 'goutte.phar';

use Goutte\Client;

$client = new Client();

$crawler = $client->request('GET', $link);

$form = $crawler->selectButton('b1')->form();

$crawler = $client->submit($form, array('QUERY' => $aaTest));

echo …
Run Code Online (Sandbox Code Playgroud)

php web-crawler ncbi goutte

-1
推荐指数
1
解决办法
1657
查看次数

爬行时scrapy中的错误403

这是我编写的用于抓取“blablacar”网站的代码。

# -*- coding: utf-8 -*-
import scrapy


class BlablaSpider(scrapy.Spider):
    name = 'blabla'

    allowed_domains = ['blablacar.in']
    start_urls = ['http://www.blablacar.in/ride-sharing/new-delhi/chandigarh']

    def parse(self, response):
        print(response.text)
Run Code Online (Sandbox Code Playgroud)

运行上述程序时,我收到错误消息

2018-06-11 00:07:05 [scrapy.extensions.telnet] 调试:Telnet 控制台监听 127.0.0.1:6023 2018-06-11 00:07:06 [scrapy.core.engine] 调试:爬行 (403) ) http://www.blablacar.in/robots.txt> (referer: None) 2018-06-11 00:07:06 [scrapy.core.engine] DEBUG: Crawled (403) http://www.blablacar .in/ride-sharing/new-delhi/chandigarh> (referer: None) 2018-06-11 00:07:06 [scrapy.spidermiddlewares.httperror] INFO:忽略响应 <403 http://www.blablacar.in /ride-sharing/new-delhi/chandigarh >: HTTP 状态代码未处理或不允许 2018-06-11 00:07:06 [scrapy.core.engine] INFO: Closing spider (finished)

web-crawler scrapy web-scraping data-extraction python-3.x

-1
推荐指数
1
解决办法
4346
查看次数

在 node js 中运行终端命令

键入后,我正在尝试使用quickscrape编写网络爬虫程序

quickscrape \
  --url https://peerj.com/articles/384 \
  --scraper journal-scrapers/scrapers/peerj.json \
  --output peerj-384
  --outformat bibjson
Run Code Online (Sandbox Code Playgroud)

并在我的终端中点击“Enter”,库将从爬虫中生成结果并将它们放入一个文件夹中。

现在我想编写一个 javascript 程序,以便为我调用这些终端命令,但我不确定如何与 node.js 中的终端进行交互。

javascript web-crawler node.js

-2
推荐指数
1
解决办法
3988
查看次数

Python网络爬虫

是否有任何python爬虫可以从网页中提取所有数据:http://www.bestbuy.com/site/HTC+-+One+S+4G+Mobile+Phone+-+Gradient+Blue+%28T-Mobile %29/4980512.p?id = 1218587135819&skuId = 4980512&contract_desc = 在此页面中,客户评论有两个页面1和2.我想抓取他的网址并获取两个网页的内容.这是否可以使用python爬虫.

python crawler也支持所有现代GET/POST技术

python web-crawler

-3
推荐指数
1
解决办法
2万
查看次数