小编bgc*_*ode的帖子

网络刮板可以绕过良好的油门保护吗?

假设数据源设置了严格的基于IP的节流.如果节流开始在下载1%的数据时拒绝其请求,那么网络抓取器是否有任何方式可以下载数据?

我能想到的黑客使用的唯一技术是某种代理系统.但是,似乎代理(即使速度快)最终都会达到节流.

更新:下面的一些人提到了像Yahoo Pipes和Tor这样的大型代理网络,但这些IP范围或已知的退出节点是否也不会被列入黑名单?

security http web-scraping

8
推荐指数
1
解决办法
2453
查看次数

使用jQuery覆盖进度条

我想显示一个"覆盖"页面的进度条,在运行时禁用其他操作,有点像警报(除非您无法通过单击任何内容退出).在jQuery中执行此操作的快速方法是什么?

我已经把图像挑出来了 - 一个动画进度条.只需要一种正确覆盖它的方法.

jquery jquery-ui

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

Broken Pipe Error导致AWS上的流式弹性MapReduce作业失败

当我这样做时,一切都在当地正常工作:

cat input | python mapper.py | sort | python reducer.py
Run Code Online (Sandbox Code Playgroud)

但是,当我在AWS Elastic Mapreduce上运行流式MapReduce作业时,作业无法成功完成.在mapper.py通过运行部分方式(我知道,因为写的这stderr沿途).映射器被"Broken Pipe"错误中断,我可以在失败后从任务尝试的syslog中检索到该错误:

java.io.IOException: Broken pipe
    at java.io.FileOutputStream.writeBytes(Native Method)
    at java.io.FileOutputStream.write(FileOutputStream.java:282)
    at java.io.BufferedOutputStream.write(BufferedOutputStream.java:105)
    at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:65)
    at java.io.BufferedOutputStream.write(BufferedOutputStream.java:109)
    at java.io.DataOutputStream.write(DataOutputStream.java:90)
    at org.apache.hadoop.streaming.io.TextInputWriter.writeUTF8(TextInputWriter.java:72)
    at org.apache.hadoop.streaming.io.TextInputWriter.writeValue(TextInputWriter.java:51)
    at org.apache.hadoop.streaming.PipeMapper.map(PipeMapper.java:109)
    at org.apache.hadoop.mapred.MapRunner.run(MapRunner.java:50)
    at org.apache.hadoop.streaming.PipeMapRunner.run(PipeMapRunner.java:36)
    at org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:441)
    at org.apache.hadoop.mapred.MapTask.run(MapTask.java:377)
    at org.apache.hadoop.mapred.Child$4.run(Child.java:255)
    at java.security.AccessController.doPrivileged(Native Method)
    at javax.security.auth.Subject.doAs(Subject.java:396)
    at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1059)
    at org.apache.hadoop.mapred.Child.main(Child.java:249)


2012-03-26 07:19:05,400 WARN org.apache.hadoop.streaming.PipeMapRed (main): java.io.IOException: Broken pipe
    at java.io.FileOutputStream.writeBytes(Native Method)
    at java.io.FileOutputStream.write(FileOutputStream.java:282)
    at java.io.BufferedOutputStream.write(BufferedOutputStream.java:105)
    at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:65)
    at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:123)
    at …
Run Code Online (Sandbox Code Playgroud)

python hadoop mapreduce amazon-web-services elastic-map-reduce

8
推荐指数
2
解决办法
8500
查看次数

在JOIN子句中MySQL逻辑评估是懒惰/短路吗?

采用以下表达式: FALSE AND (expression)

MySQL会评估表达式,还是只要看到它就继续前进FALSE

一些背景上下文 - 我想通过以下方式加快查询:

JOIN... ON (indexed_column1=indexed_column2 AND non_indexed_column_a=non_indexed_column_b)

有关我为什么要执行此查询的背景,请参阅此答案

如果它总是要评估non_indexed_column_a=non_indexed_column_b那么就没有时间了.

mysql logic boolean-logic lazy-evaluation

8
推荐指数
1
解决办法
1407
查看次数

在Mac OS X上调试Ruby中的malloc错误

我正在尝试调试运行一些Ruby脚本时遇到的以下错误:

ruby(47333,0x7fff72aee960) malloc: *** error for object 0x7f98b6a6e3f0: pointer being freed was not allocated
*** set a breakpoint in malloc_error_break to debug
Run Code Online (Sandbox Code Playgroud)

知道如何实际设置这样的断点和调试吗?我想知道这是由Ruby本身还是一些扩展引起的.

我正在使用Mac OS X 10.7.3 (Lion)ruby 1.8.7 (2010-01-10 patchlevel 249) [universal-darwin11.0].

ruby debugging malloc macos

8
推荐指数
1
解决办法
1781
查看次数

无法在Mac OS X上为透明代理设置端口转发

我正在尝试在我的Mac OS X Lion(10.7.5)上设置透明代理,因此我可以使用mitmproxy(拦截来自Android应用程序的SSL流量).我按照mitmproxy文档中的步骤在Mac OS X上使用pf设置端口转发,它们都没有任何错误:

$ sudo sysctl -w net.inet.ip.forwarding=1
Password:
net.inet.ip.forwarding: 0 -> 1

$ sudo pfctl -f pf.conf
No ALTQ support in kernel
ALTQ related functions disabled

$ sudo pfctl -e
No ALTQ support in kernel
ALTQ related functions disabled
pf enabled
Run Code Online (Sandbox Code Playgroud)

但它似乎没有任何影响.当我在浏览器中访问网站时,它会发出直接请求,并且不会通过我指定的端口.这是pf.conf文件(en1是我的wifi):

rdr on en1 inet proto tcp to any port 80 -> 127.0.0.1 port 4500
rdr on en1 inet proto tcp to any port 443 -> 127.0.0.1 …
Run Code Online (Sandbox Code Playgroud)

macos proxy networking portforwarding mitmproxy

8
推荐指数
1
解决办法
6822
查看次数

查找一本书的版本

有没有办法使用亚马逊产品广告API查找基于其ISBN的书的各种版本?

而且,更一般地说,在书上查找版本元数据的各种选择是什么?我唯一知道的是来自worldcat的xISBN api

在我的网站上,当人们搜索书籍时,我们有一个"更多版本"按钮.所以我会做很多查询(并缓存它们).

api amazon amazon-web-services isbn

7
推荐指数
1
解决办法
797
查看次数

有趣的树/分层数据结构问题

大学有不同的组织部门的方式.有些学校去了School -> Term -> Department.其他人介于两者之间,最长的是School -> Sub_Campus -> Program -> Term -> Division -> Department.

School,Term和,并且Department是学校的"树"部门中唯一存在的.这些类别的顺序永远不会改变,我给你的第二个例子是最长的.每一步都是1:N的关系.

现在,我不确定如何建立表之间的关系.例如,列中包含哪些列Term?其母公司可能是Program,Sub_CampusSchool.它取决于学校的系统.我可以设想将Term表设置为所有这些(所有这些都默认为NULL)的外键,但我不确定这是在这里做事的规范方式.

sql database tree normalization hierarchy

7
推荐指数
1
解决办法
1216
查看次数

查看组织的所有GitHub Repos的里程碑

在GitHub上对组织有没有办法,看看你的组织是在其所有的里程碑同时做,而不是让浏览到每个回购并单击issues->的里程碑,只看见那一个?

如果这是不可能从界面我可能会去设置基于API的解决方案,如果这是唯一的方法.

api github

7
推荐指数
1
解决办法
1182
查看次数

链接在一起> 100K页面而不会使SEO受到惩罚

我正在建立一个网站,对互联网上数十万个其他网站的隐私政策进行审查.它的初始内容基于我运行CommonCrawl 50亿页面Web转储并使用脚本分析所有隐私策略,以识别某些特征(例如"销售您的个人信息").

根据SEO MOZ初学者SEO指南:

搜索引擎往往只在任何给定页面上抓取大约100个链接.这种宽松的限制对于抑制垃圾邮件和保存排名是必要的.

我想知道什么是一种聪明的方法来创建一个导航网络,不会留下任何页面孤儿,但仍然会避免他们所说的SEO惩罚.我有一些想法:

  • 创建按字母顺序排列的网页(或Google Sitemap .xml),例如"以Ado*开头的网站".例如,它会链接"Adobe.com".这个,或任何其他无意义的页面拆分,似乎有点人为,我想知道谷歌是否可能不喜欢它.
  • 使用元关键字或描述进行分类
  • 找到一些方法来应用更有趣的类别,例如地理或基于内容.我担心的是,我不确定如何将这些类别全面应用到这么多网站.我想如果需要,我可以编写另一个分类器来尝试分析爬网页面的内容.虽然听起来像个大工作.
  • 使用DMOZ项目来帮助对页面进行分类.

维基百科和StackOverflow显然通过允许用户对所有页面进行分类或标记来很好地解决了这个问题.在我的情况下,我没有那么奢侈,但我想找到最好的选择.

这个问题的核心是Google如何响应不同的导航结构.是否会以程序化/无意义的方式惩罚那些创建网页的人?或者只要一切都通过链接连接,它不关心吗?

seo web-crawler web

7
推荐指数
1
解决办法
360
查看次数